Hello, > Don't know how to fix this - nothing obvious. But we create at > > *op = build1 (INDIRECT_REF, TREE_TYPE (*op), with); > > an INDRECT_REF of the form > > <indirect_ref 0x4066b580 > type <integer_type 0x401493cc char asm_written public QI > size <integer_cst 0x40141210 constant invariant 8> > unit size <integer_cst 0x40141228 constant invariant 1> > align 8 symtab 1075593216 alias set -1 precision 8 min > <integer_cst 0x40141270 -128> max <integer_cst 0x401412d0 127> > pointer_to_this <pointer_type 0x40156bd0>> > > arg 0 <ssa_name 0x40660740 > type <pointer_type 0x404785e8 type <record_type 0x40476ec4 > frame_state> > public unsigned SI > size <integer_cst 0x40141408 constant invariant 32> > unit size <integer_cst 0x40141198 constant invariant 4> > align 32 symtab 0 alias set -1> > var <parm_decl 0x40478804 state_in> def_stmt <modify_expr > 0x4066c1f8> > version 38 > ptr-info 0x4065b8ac>> > > where we confuse type <integer_type 0x401493cc> and > type <record_type 0x40476ec4 frame_state>. Testcase is compiling > with -O2 -g > > /net/alwazn/home/rguenth/src/gcc/cvs/gcc-4.1/gcc/unwind-dw2.c: In function > '__frame_state_for': > /net/alwazn/home/rguenth/src/gcc/cvs/gcc-4.1/gcc/unwind-dw2.c:1036 > > > Please fix / advice.
rewrite_address_base is a piece of hack needed to cheat the alias representation system. I would not worry about it much now, once the TARGET_MEM_REF patch is approved, this whole function will be removed. Zdenek