[LLVMdev] Porting to System z

Duncan Sands baldrick at free.fr
Tue Apr 7 12:57:06 PDT 2009


Hi Neale,

> The comment in the above fix indicates that in this 64-bit system the enum
> needs to be 64-bits is correct, but the fix doesn't seem to do it.

the basic problem seems to be that your system compiler is miscompiling
LLVM.  Mucking around with the details of the union in the hope of tricking
the compiler into not miscompiling is one approach, but as you saw each
broken compiler tends to be broken differently :)  I'm quite surprised
though because you said you are using gcc 4.3 (right?).  This may be a
sign that something is wrong in LLVM rather than in the system compiler...
Did it work when building without optimization?

Ciao,

Duncan.



More information about the llvm-dev mailing list