------- Comment #5 from rguenth at gcc dot gnu dot org  2006-03-13 10:01 -------
On powerpc64-linux I get

(gdb) call debug_tree(exp)
 <addr_expr 0xf7d7a620
    type <pointer_type 0xf7ea0070
        type <integer_type 0xf7e90460 int sizes-gimplified public SI
            size <integer_cst 0xf7e929e0 constant invariant 32>
            unit size <integer_cst 0xf7e926a0 constant invariant 4>
            align 32 symtab 0 alias set -1 precision 32 min <integer_cst
0xf7e92980 -2147483648> max <integer_cst 0xf7e929a0 2147483647>
            pointer_to_this <pointer_type 0xf7ea0070>>
        unsigned DI
        size <integer_cst 0xf7e92b00 constant invariant 64>
        unit size <integer_cst 0xf7e92b20 constant invariant 8>
        align 64 symtab 0 alias set -1>
    invariant
    arg 0 <var_decl 0xf7d7b460 x
        type <array_type 0xf7d7b3f0 type <integer_type 0xf7e90460 int>
            sizes-gimplified BLK
            size <integer_cst 0xf7e9e660 constant invariant 256>
            unit size <integer_cst 0xf7e92680 constant invariant 32>
            align 32 symtab 0 alias set -1 domain <integer_type 0xf7f16ee0>>
        addressable used BLK file t.c line 5 size <integer_cst 0xf7e9e660 256>
unit size <integer_cst 0xf7e92680 32>
        align 128 context <function_decl 0xf7f7d400 foo> attributes <tree_list
0xf7d7a5c0>
        (mem/s/c:BLK (reg/f:DI 115 virtual-stack-vars) [0 x+0 S32 A128])>>

so the decl has an alignment of 128 -- I wonder why i686 is different here. 
So,
I have a fix.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26659

Reply via email to