Summary: | [4.0/4.1 Regression] invalid assembly with -gstabs+ | ||
---|---|---|---|
Product: | gcc | Reporter: | ivan <ivanr> |
Component: | target | Assignee: | Eric Botcazou <ebotcazou> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | ebotcazou, gcc-bugs |
Priority: | P2 | Keywords: | wrong-code |
Version: | 4.1.0 | ||
Target Milestone: | 4.0.0 | ||
Host: | sparc-sun-solaris2.8 | Target: | sparc-sun-solaris2.8 |
Build: | sparc-sun-solaris2.8 | Known to work: | |
Known to fail: | Last reconfirmed: | 2005-03-16 10:24:33 | |
Attachments: | preprocessed and assembler file for sugarconverter.cpp |
Description
ivan
2005-03-12 23:09:39 UTC
Is there a reason why you are using stabs+, the default debuging format on solaris is dwarf-2 which provides more information. Created attachment 8377 [details]
preprocessed and assembler file for sugarconverter.cpp
untar and apply this command:
g++ -v -save-temps -gstabs+ -fPIC -c -o -DUNIX -DUSING_STLPORT -I/home/lib/S
TLport/stlport sugarconverter.o sugarconverter.ii
It's 4.1.0 if I read correctly. This is most likely the same problem as PR 18170, the error messages are similar. (In reply to comment #3) > It's 4.1.0 if I read correctly. Yes, actually it's 4.1.0 20050309 (In reply to comment #1) > Is there a reason why you are using stabs+, the default debuging format on solaris is dwarf-2 which > provides more information. yes, file compiles with default format but doesn't with stabs+ (In reply to comment #1) > Is there a reason why you are using stabs+, the default debuging format on solaris is dwarf-2 which > provides more information. stabs+ is used for compatibility issues with Wine (In reply to comment #7) > stabs+ is used for compatibility issues with Wine So, even mywin (and cygwin) have both moved over to dwarf2. Subject: Re: invalid assembly with -gstabs+ Hi, If I switch to default debug format, I get an internal compiler error in another file that I guess would have to report as a different bug. I'll need some time though to narrow down the file to something smaller. Ivan ----- Original Message ----- From: "pinskia at gcc dot gnu dot org" <gcc-bugzilla@gcc.gnu.org> To: <ivanr@syncad.com> Sent: Monday, March 14, 2005 9:27 AM Subject: [Bug debug/20446] invalid assembly with -gstabs+ > > ------- Additional Comments From pinskia at gcc dot gnu dot org 2005-03-14 14:27 ------- > (In reply to comment #7) > > stabs+ is used for compatibility issues with Wine > > So, even mywin (and cygwin) have both moved over to dwarf2. > > > -- > > > http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20446 > > ------- You are receiving this mail because: ------- > You reported the bug, or are watching the reporter. > > Subject: Re: invalid assembly with -gstabs+ Hi, If I switch to default debug format, I get an internal compiler error in another file that I guess would have to report as a different bug. I'll need some time though to narrow down the file to something smaller. Ivan ----- Original Message ----- From: "pinskia at gcc dot gnu dot org" <gcc-bugzilla@gcc.gnu.org> To: <ivanr@syncad.com> Sent: Monday, March 14, 2005 9:27 AM Subject: [Bug debug/20446] invalid assembly with -gstabs+ > > ------- Additional Comments From pinskia at gcc dot gnu dot org 2005-03-14 14:27 ------- > (In reply to comment #7) > > stabs+ is used for compatibility issues with Wine > > So, even mywin (and cygwin) have both moved over to dwarf2. > > > -- > > > http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20446 > > ------- You are receiving this mail because: ------- > You reported the bug, or are watching the reporter. > > With Sun as, I get as: "sugarconverter.s", line 873: error: can't compute difference between symbols in different segments for the same function (which is slightly more descriptive). Investigating, but STABS+ is crippled in GCC 4.x. Workaround: -fdelayed-branch (enabled at -O and above). Recategorizing. Subject: Bug 20446 CVSROOT: /cvs/gcc Module name: gcc Changes by: ebotcazou@gcc.gnu.org 2005-04-04 15:29:12 Modified files: gcc : ChangeLog gcc/config/sparc: linux.h linux64.h sparc.c sparc.h Log message: PR target/20446 * config/sparc/sparc.h (NEED_INDICATE_EXEC_STACK): Define to 0. * config/sparc/linux.h (TARGET_ASM_FILE_END): Delete. (NEED_INDICATE_EXEC_STACK): Define to 1. * config/sparc/linux64.h (TARGET_ASM_FILE_END): Delete. (NEED_INDICATE_EXEC_STACK): Define to 1. * config/sparc/sparc.c (TARGET_ASM_FILE_END): Set to sparc_file_end. (add_pc_to_pic_symbol): Rename into pic_helper_symbol. (add_pc_to_pic_symbol_name): Rename into pic_helper_symbol_name. (pic_helper_emitted_p): New global. (emit_pic_helper): New function extracted from... (load_pic_register): ...here. Add 'delay_pic_helper' parameter. Do not call emit_pic_helper if delay_pic_helper is true. (sparc_expand_prologue): Pass 'false' to load_pic_register. (sparc_output_mi_thunk): Pass 'true' to load_pic_register. (sparc_file_end): New function. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&r1=2.8118&r2=2.8119 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/sparc/linux.h.diff?cvsroot=gcc&r1=1.68&r2=1.69 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/sparc/linux64.h.diff?cvsroot=gcc&r1=1.91&r2=1.92 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/sparc/sparc.c.diff?cvsroot=gcc&r1=1.358&r2=1.359 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/sparc/sparc.h.diff?cvsroot=gcc&r1=1.273&r2=1.274 Subject: Bug 20446 CVSROOT: /cvs/gcc Module name: gcc Branch: gcc-4_0-branch Changes by: ebotcazou@gcc.gnu.org 2005-04-04 15:32:03 Modified files: gcc : ChangeLog gcc/config/sparc: linux.h linux64.h sparc.c sparc.h Log message: PR target/20446 * config/sparc/sparc.h (NEED_INDICATE_EXEC_STACK): Define to 0. * config/sparc/linux.h (TARGET_ASM_FILE_END): Delete. (NEED_INDICATE_EXEC_STACK): Define to 1. * config/sparc/linux64.h (TARGET_ASM_FILE_END): Delete. (NEED_INDICATE_EXEC_STACK): Define to 1. * config/sparc/sparc.c (TARGET_ASM_FILE_END): Set to sparc_file_end. (add_pc_to_pic_symbol): Rename into pic_helper_symbol. (add_pc_to_pic_symbol_name): Rename into pic_helper_symbol_name. (pic_helper_emitted_p): New global. (emit_pic_helper): New function extracted from... (load_pic_register): ...here. Add 'delay_pic_helper' parameter. Do not call emit_pic_helper if delay_pic_helper is true. (sparc_expand_prologue): Pass 'false' to load_pic_register. (sparc_output_mi_thunk): Pass 'true' to load_pic_register. (sparc_file_end): New function. Patches: http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=2.7592.2.120&r2=2.7592.2.121 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/sparc/linux.h.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.68&r2=1.68.8.1 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/sparc/linux64.h.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.91&r2=1.91.8.1 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/sparc/sparc.c.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.354&r2=1.354.8.1 http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/sparc/sparc.h.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.273&r2=1.273.8.1 Subject: Re: [4.0/4.1 Regression] invalid assembly with -gstabs+ patch tested. works fine. thanks! Thanks for confirming. Reopened ... ... to close as FIXED. |