------- Comment #4 from rguenth at gcc dot gnu dot org  2006-03-13 09:30 -------
Interestingly, on i686 (which has BIGGEST_ALIGNMENT 128), I get with the
testcase:

Breakpoint 3, get_pointer_alignment (exp=0xb7c8b320, max_align=128)
(gdb) call debug_tree(exp)
 <addr_expr 0xb7c8b320
    type <pointer_type 0xb7c95c38
        type <integer_type 0xb7c95284 int sizes-gimplified public SI
            size <integer_cst 0xb7c863f0 constant invariant 32>
            unit size <integer_cst 0xb7c86180 constant invariant 4>
            align 32 symtab 0 alias set -1 precision 32 min <integer_cst
0xb7c863a8 -2147483648> max <integer_cst 0xb7c863c0 2147483647>
            pointer_to_this <pointer_type 0xb7c95c38>>
        unsigned SI size <integer_cst 0xb7c863f0 32> unit size <integer_cst
0xb7c86180 4>
        align 32 symtab 0 alias set -1>
    invariant
    arg 0 <var_decl 0xb7c92108 x
        type <array_type 0xb7d2da10 type <integer_type 0xb7c95284 int>
            sizes-gimplified BLK
            size <integer_cst 0xb7c86db0 constant invariant 256>
            unit size <integer_cst 0xb7c86168 constant invariant 32>
            align 32 symtab 0 alias set -1 domain <integer_type 0xb7cebac8>>
        addressable used BLK file t.c line 5 size <integer_cst 0xb7c86db0 256>
unit size <integer_cst 0xb7c86168 32>
        align 32 context <function_decl 0xb7d2bd80 foo> attributes <tree_list
0xb7d38048>
        (mem/s/c:BLK (plus:SI (reg/f:SI 54 virtual-stack-vars)
        (const_int -32 [0xffffffe0])) [0 x+0 S32 A32])>>

i.e. the decl does not have alignment of 128, but 32.  And we get the same
alignment before and after the patch (32).  Off to a ppc machine...


-- 


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

Reply via email to