http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48853
Summary: [4.7 Regression] Wrong DWARF codegen when Pmode != ptr_mode Product: gcc Version: 4.7.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: debug AssignedTo: unassig...@gcc.gnu.org ReportedBy: hjl.to...@gmail.com CC: ja...@gcc.gnu.org Revision 173210: http://gcc.gnu.org/ml/gcc-cvs/2011-04/msg01406.html breaks DWARF codegen when Pmode != ptr_mode. For x32, I got FAIL: gcc.dg/debug/dwarf2/var2.c scan-assembler DW_OP_addr[\\n\\r]+[^\\n\\r]+bar FAIL: gcc.dg/debug/dwarf2/var2.c scan-assembler DW_OP_addr[\\n\\r]+[^\\n\\r]+foo FAIL: gcc.dg/torture/stackalign/alloca-1.c -O1 (internal compiler error) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O1 (internal compiler error) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O1 (internal compiler error) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O1 (internal compiler error) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O1 (test for excess errors) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O1 (test for excess errors) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O1 (test for excess errors) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O1 (test for excess errors) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O2 -flto -flto-partition=none (internal compiler error) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O2 -flto -flto-partition=none (internal compiler error) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O2 -flto -flto-partition=none (internal compiler error) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O2 -flto -flto-partition=none (internal compiler error) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O2 -flto -flto-partition=none (test for excess errors) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O2 -flto -flto-partition=none (test for excess errors) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O2 -flto -flto-partition=none (test for excess errors) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O2 -flto -flto-partition=none (test for excess errors) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O2 -flto (internal compiler error) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O2 -flto (internal compiler error) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O2 -flto (internal compiler error) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O2 -flto (internal compiler error) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O2 -flto (test for excess errors) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O2 -flto (test for excess errors) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O2 -flto (test for excess errors) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O2 -flto (test for excess errors) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O2 (internal compiler error) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O2 (internal compiler error) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O2 (internal compiler error) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O2 (internal compiler error) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O2 (test for excess errors) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O2 (test for excess errors) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O2 (test for excess errors) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O2 (test for excess errors) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O3 -fomit-frame-pointer (internal compiler error) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O3 -fomit-frame-pointer (internal compiler error) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O3 -fomit-frame-pointer (test for excess errors) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O3 -fomit-frame-pointer (test for excess errors) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O3 -g (internal compiler error) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O3 -g (internal compiler error) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O3 -g (test for excess errors) FAIL: gcc.dg/torture/stackalign/alloca-1.c -O3 -g (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-2.c -O1 (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-2.c -O1 (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-2.c -O1 (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-2.c -O1 (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-2.c -O2 -flto -flto-partition=none (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-2.c -O2 -flto -flto-partition=none (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-2.c -O2 -flto -flto-partition=none (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-2.c -O2 -flto -flto-partition=none (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-2.c -O2 -flto (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-2.c -O2 -flto (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-2.c -O2 -flto (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-2.c -O2 -flto (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-2.c -O2 (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-2.c -O2 (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-2.c -O2 (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-2.c -O2 (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-2.c -O3 -fomit-frame-pointer (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-2.c -O3 -fomit-frame-pointer (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-2.c -O3 -g (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-2.c -O3 -g (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-3.c -O1 (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-3.c -O1 (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-3.c -O1 (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-3.c -O1 (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-3.c -O1 (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-3.c -O1 (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-3.c -O1 (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-3.c -O1 (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-3.c -O2 -flto -flto-partition=none (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-3.c -O2 -flto -flto-partition=none (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-3.c -O2 -flto -flto-partition=none (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-3.c -O2 -flto -flto-partition=none (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-3.c -O2 -flto -flto-partition=none (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-3.c -O2 -flto -flto-partition=none (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-3.c -O2 -flto -flto-partition=none (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-3.c -O2 -flto -flto-partition=none (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-3.c -O2 -flto (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-3.c -O2 -flto (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-3.c -O2 -flto (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-3.c -O2 -flto (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-3.c -O2 -flto (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-3.c -O2 -flto (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-3.c -O2 -flto (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-3.c -O2 -flto (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-3.c -O2 (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-3.c -O2 (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-3.c -O2 (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-3.c -O2 (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-3.c -O2 (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-3.c -O2 (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-3.c -O2 (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-3.c -O2 (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-3.c -O3 -fomit-frame-pointer (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-3.c -O3 -fomit-frame-pointer (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-3.c -O3 -fomit-frame-pointer (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-3.c -O3 -fomit-frame-pointer (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-3.c -O3 -g (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-3.c -O3 -g (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-3.c -O3 -g (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-3.c -O3 -g (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-4.c -O1 (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-4.c -O1 (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-4.c -O1 (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-4.c -O1 (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-4.c -O1 (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-4.c -O1 (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-4.c -O1 (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-4.c -O1 (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-4.c -O2 -flto -flto-partition=none (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-4.c -O2 -flto -flto-partition=none (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-4.c -O2 -flto -flto-partition=none (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-4.c -O2 -flto -flto-partition=none (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-4.c -O2 -flto -flto-partition=none (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-4.c -O2 -flto -flto-partition=none (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-4.c -O2 -flto -flto-partition=none (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-4.c -O2 -flto -flto-partition=none (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-4.c -O2 -flto (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-4.c -O2 -flto (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-4.c -O2 -flto (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-4.c -O2 -flto (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-4.c -O2 -flto (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-4.c -O2 -flto (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-4.c -O2 -flto (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-4.c -O2 -flto (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-4.c -O2 (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-4.c -O2 (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-4.c -O2 (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-4.c -O2 (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-4.c -O2 (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-4.c -O2 (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-4.c -O2 (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-4.c -O2 (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-4.c -O3 -fomit-frame-pointer (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-4.c -O3 -fomit-frame-pointer (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-4.c -O3 -fomit-frame-pointer (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-4.c -O3 -fomit-frame-pointer (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-4.c -O3 -g (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-4.c -O3 -g (internal compiler error) FAIL: gcc.dg/torture/stackalign/nested-4.c -O3 -g (test for excess errors) FAIL: gcc.dg/torture/stackalign/nested-4.c -O3 -g (test for excess errors) FAIL: gcc.dg/torture/stackalign/ret-struct-1.c -O1 (internal compiler error) FAIL: gcc.dg/torture/stackalign/ret-struct-1.c -O1 (test for excess errors) FAIL: gcc.dg/torture/stackalign/ret-struct-1.c -O2 -flto -flto-partition=none (internal compiler error) FAIL: gcc.dg/torture/stackalign/ret-struct-1.c -O2 -flto -flto-partition=none (test for excess errors) FAIL: gcc.dg/torture/stackalign/ret-struct-1.c -O2 -flto (internal compiler error) FAIL: gcc.dg/torture/stackalign/ret-struct-1.c -O2 -flto (test for excess errors) FAIL: gcc.dg/torture/stackalign/ret-struct-1.c -O2 (internal compiler error) FAIL: gcc.dg/torture/stackalign/ret-struct-1.c -O2 (test for excess errors) FAIL: g++.dg/debug/dwarf2/static-local-var-in-ctor.C scan-assembler DW_OP_addr[^\n\r]*[\n\r]*[^\n\r]*staticvar1 FAIL: g++.dg/debug/dwarf2/static-local-var-in-ctor.C scan-assembler DW_OP_addr[^\n\r]*[\n\r]*[^\n\r]*staticvar2 FAIL: g++.dg/torture/stackalign/eh-alloca-1.C -O1 (internal compiler error) FAIL: g++.dg/torture/stackalign/eh-alloca-1.C -O1 (test for excess errors) FAIL: g++.dg/torture/stackalign/eh-alloca-1.C -O2 -flto -flto-partition=none (internal compiler error) FAIL: g++.dg/torture/stackalign/eh-alloca-1.C -O2 -flto -flto-partition=none (test for excess errors) FAIL: g++.dg/torture/stackalign/eh-alloca-1.C -O2 -flto (internal compiler error) FAIL: g++.dg/torture/stackalign/eh-alloca-1.C -O2 -flto (test for excess errors) FAIL: g++.dg/torture/stackalign/eh-alloca-1.C -O2 (internal compiler error) FAIL: g++.dg/torture/stackalign/eh-alloca-1.C -O2 (test for excess errors) FAIL: g++.dg/torture/stackalign/eh-alloca-1.C -O3 -fomit-frame-pointer (internal compiler error) FAIL: g++.dg/torture/stackalign/eh-alloca-1.C -O3 -fomit-frame-pointer (test for excess errors) FAIL: g++.dg/torture/stackalign/eh-alloca-1.C -O3 -g (internal compiler error) FAIL: g++.dg/torture/stackalign/eh-alloca-1.C -O3 -g (test for excess errors) FAIL: g++.dg/torture/stackalign/eh-vararg-1.C -O1 (internal compiler error) FAIL: g++.dg/torture/stackalign/eh-vararg-1.C -O1 (test for excess errors) FAIL: g++.dg/torture/stackalign/eh-vararg-1.C -O2 -flto -flto-partition=none (internal compiler error) FAIL: g++.dg/torture/stackalign/eh-vararg-1.C -O2 -flto -flto-partition=none (test for excess errors) FAIL: g++.dg/torture/stackalign/eh-vararg-1.C -O2 -flto (internal compiler error) FAIL: g++.dg/torture/stackalign/eh-vararg-1.C -O2 -flto (test for excess errors) FAIL: g++.dg/torture/stackalign/eh-vararg-1.C -O2 (internal compiler error) FAIL: g++.dg/torture/stackalign/eh-vararg-1.C -O2 (test for excess errors) FAIL: g++.dg/torture/stackalign/eh-vararg-1.C -O3 -fomit-frame-pointer (internal compiler error) FAIL: g++.dg/torture/stackalign/eh-vararg-1.C -O3 -fomit-frame-pointer (test for excess errors) FAIL: g++.dg/torture/stackalign/eh-vararg-1.C -O3 -g (internal compiler error) FAIL: g++.dg/torture/stackalign/eh-vararg-1.C -O3 -g (test for excess errors) FAIL: g++.dg/torture/stackalign/eh-vararg-2.C -O1 (internal compiler error) FAIL: g++.dg/torture/stackalign/eh-vararg-2.C -O1 (test for excess errors) FAIL: g++.dg/torture/stackalign/eh-vararg-2.C -O2 -flto -flto-partition=none (internal compiler error) FAIL: g++.dg/torture/stackalign/eh-vararg-2.C -O2 -flto -flto-partition=none (test for excess errors) FAIL: g++.dg/torture/stackalign/eh-vararg-2.C -O2 -flto (internal compiler error) FAIL: g++.dg/torture/stackalign/eh-vararg-2.C -O2 -flto (test for excess errors) FAIL: g++.dg/torture/stackalign/eh-vararg-2.C -O2 (internal compiler error) FAIL: g++.dg/torture/stackalign/eh-vararg-2.C -O2 (test for excess errors) FAIL: g++.dg/torture/stackalign/eh-vararg-2.C -O3 -fomit-frame-pointer (internal compiler error) FAIL: g++.dg/torture/stackalign/eh-vararg-2.C -O3 -fomit-frame-pointer (test for excess errors) FAIL: g++.dg/torture/stackalign/eh-vararg-2.C -O3 -g (internal compiler error) FAIL: g++.dg/torture/stackalign/eh-vararg-2.C -O3 -g (test for excess errors)