Пн сен 27, 2021 12:16:21
Пн сен 27, 2021 12:39:14
jcxz писал(а):Достаточно ему написать корректный пример:
- Код:
extern volatile uint64_t aaa;
volatile uint64_t *ptr = (uint64_t*)(&aaa+1);
*ptr = 0x1234567887654321;
Как будут вполне ожидаемые LDRD/STRD.
jcxz писал(а):Т.е. - volatile в случае GCC никак не спасает от исключения невыровненного доступа. Не поможет оно.
Пн сен 27, 2021 12:48:32
Пн сен 27, 2021 12:51:52
Пн сен 27, 2021 12:57:06
Пн сен 27, 2021 13:06:58
jcxz писал(а):Достаточно ему написать корректный пример:
- Код:
extern volatile uint64_t aaa;
volatile uint64_t *ptr = (uint64_t*)(&aaa+1);
*ptr = 0x1234567887654321;
Как будут вполне ожидаемые LDRD/STRD.
Пн сен 27, 2021 13:20:20
Пн сен 27, 2021 13:20:32
Пн сен 27, 2021 13:23:33
Пн сен 27, 2021 13:46:34