[sisyphus] Странности при переходе объединении двух целых в вещественное на x86_64

Kirill A. Shutemov kirill на shutemov.name
Пт Авг 7 12:54:12 MSD 2009


2009/8/7 Roman Savochenko <rom_as at diyaorg.dp.ua>:
> Kirill A. Shutemov wrote:
>>>>
>>>> И во всех трёх вариантах нарушили strict aliasing. Используйте union.
>>>
>>>  ним работает, но это не решение, поскольку приведенные мною обороты
>>> распространены и я не уверен что подобных проблем нет в других частях
>>> моей,
>>> в общем-то не маленькой, программы.
>>>
>>
>> Есть повод исправить код.
>>
>
> Я не считаю его ошибочным.

Strict aliasing rule -- часть стандарта C99. Если вы хотите писать
быстрый переносимый
код, то вам стоит следовать этому правилу.

Подробней про strict aliaing можно почитать тут:
http://www.cellperformance.com/mike_acton/2006/06/understanding_strict_aliasing.html


Подробная информация о списке рассылки Sisyphus