that means some existing bugs get exposed. Your previous version
simply skipped the target mem refs.  You will need to debug the
problem a little more.

David

On Tue, Nov 1, 2011 at 5:26 AM,  <dvyu...@google.com> wrote:
> On 2011/10/31 06:08:34, davidxl wrote:
>>
>> http://codereview.appspot.com/5303083/diff/1/gcc/passes.c#newcode1423
>> gcc/passes.c:1423: NEXT_PASS (pass_tsan);
>> Move this to the same place as asan. Otherwise TARGET_MEM_REF won't be
>
> handled.
>
> After I moved the pass it started crashing:
> Program received signal SIGSEGV, Segmentation fault.
> 0x0000000000718f94 in is_gimple_reg_type (t=0x7ffff771efa0)
>    at gimple.c:2960
> 2960      return !AGGREGATE_TYPE_P (type);
> (gdb) bt
> #0  0x0000000000718f94 in is_gimple_reg_type (t=0x7ffff771efa0)
>    at gimple.c:2960
> #1  is_gimple_val (t=0x7ffff771efa0) at gimple.c:3028
> #2  0x00000000008a5d20 in verify_types_in_gimple_reference
> (expr=0x7ffff76b74c0, require_lvalue=false)
>    at tree-cfg.c:2934
> #3  0x00000000008b2d4f in verify_gimple_in_cfg (fn=0x7ffff77c67e0)
>    at tree-cfg.c:4382
> #4  0x0000000000a061d6 in verify_ssa (check_modified_stmt=true)
>    at tree-ssa.c:924
> #5  0x00000000007f755c in execute_function_todo (data=Unhandled dwarf
> expression opcode 0xf3
> )
>    at passes.c:1727
> #6  0x00000000007f7e4d in execute_todo (flags=34854) at passes.c:1758
> #7  0x00000000007fafda in execute_one_pass (pass=0x122a900)
>    at passes.c:2104
>
> The code seems to be (however I am not 100% sure):
>  D.3617_33 = MEM[(const uint64_t *)ctx_11(D)].nhkey[D.3612_26]{lb:
> D.3810_279 sz: 8};
>
>
> http://codereview.appspot.com/5303083/
>

Reply via email to