Re: fix for strict-alias warnings

Поиск
Список
Период
Сортировка
Искать
От
Manfred Spraul
Тема
Re: fix for strict-alias warnings
Дата
Msg-id
3F8C641A.2010700@colorfullife.com
Ответ на
Список
Дерево обсуждения
Re: fix for strict-alias warnings "Andrew Dunstan" <andrew@dunslane.net>
Re: fix for strict-alias warnings Bruce Momjian <pgman@candle.pha.pa.us>
Re: fix for strict-alias warnings Bruce Momjian <pgman@candle.pha.pa.us>
Re: fix for strict-alias warnings Bruce Momjian <pgman@candle.pha.pa.us>
Re: fix for strict-alias warnings Tom Lane <tgl@sss.pgh.pa.us>
Tom Lane wrote:

>Manfred Spraul  writes:
>  
>
>>After some massaging, I've succeeded in generating bad code using a 
>>slightly modified MemSetAligned macro (parameters -O2 
>>-fstrict-aliasing): gcc pipelined the x*x around the memset.
>>    
>>
>
>As I already explained, we do not care about the MemSetAligned case.
>Is gcc 3.3 smart enough to optimize away the pointer alignment test
>in the full macro?
>
3.2 optimizes away the pointer alignment test, but then doesn't pipeline 
the "x*x" calculation. It might be due to a known (and now fixed) bug in 
gcc where is lost track of constants, and thus didn't succeed in 
optimizing long calculations.

I don't have gcc 3.3 installed, but IMHO it would be insane to leave 
strict alias analysis enabled - writing to *(int32*)addr violates the 
alias rules, the bad code generated with MemSetAligned proved that.
Is someone around with 3.3 who could test MemSet?

--
    Manfred


В списке pgsql-patches по дате отправления
От: Peter Eisentraut
Дата:
От: Ian Barwick
Дата:
FAQ