[Bug debug/24943] [hppa64] Bad dwarf output using non-preserved base register
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=24943 --- Comment #11 from dave.anglin at bell dot net --- On 2019-03-13 4:09 a.m., rguenth at gcc dot gnu.org wrote: > So it's a target issue, not a debug one. Of course we could avoid generating > wrong-debug by generating none whenever the argument pointer is involved? It appears to me that this is likely a generic target problem: rtx default_internal_arg_pointer (void) { /* If the reg that the virtual arg pointer will be translated into is not a fixed reg or is the stack pointer, make a copy of the virtual arg pointer, and address parms via the copy. The frame pointer is considered fixed even though it is not marked as such. */ if ((ARG_POINTER_REGNUM == STACK_POINTER_REGNUM || ! (fixed_regs[ARG_POINTER_REGNUM] || ARG_POINTER_REGNUM == FRAME_POINTER_REGNUM))) return copy_to_reg (virtual_incoming_args_rtx); else return virtual_incoming_args_rtx; } static rtx pa_internal_arg_pointer (void) { /* The argument pointer and the hard frame pointer are the same in the 32-bit runtime, so we don't need a copy. */ if (TARGET_64BIT) return copy_to_reg (virtual_incoming_args_rtx); else return virtual_incoming_args_rtx; } Both routines use copy_to_reg.
[Bug debug/24943] [hppa64] Bad dwarf output using non-preserved base register
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=24943 Richard Biener changed: What|Removed |Added CC||aoliva at gcc dot gnu.org --- Comment #10 from Richard Biener --- So it's a target issue, not a debug one. Of course we could avoid generating wrong-debug by generating none whenever the argument pointer is involved? Not sure whether I'd call hppa64-hpux important enough to worry.
[Bug debug/24943] [hppa64] Bad dwarf output using non-preserved base register
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=24943 --- Comment #9 from dave.anglin at bell dot net --- The problem is there isn't a fixed relationship between the stack pointer register, %r30, and the argument pointer register, %r29. HP didn't provide a slot in the stack frame to save the argument pointer. It is call clobbered. The only option to fix this issue would be be to preserve it across calls. This would impact performance.
[Bug debug/24943] [hppa64] Bad dwarf output using non-preserved base register
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24943 Richard Guenther rguenth at gcc dot gnu.org changed: What|Removed |Added Status|WAITING |NEW --- Comment #8 from Richard Guenther rguenth at gcc dot gnu.org 2012-01-12 09:17:52 UTC --- Thus, confirmed.
[Bug debug/24943] [hppa64] Bad dwarf output using non-preserved base register
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24943 Richard Guenther rguenth at gcc dot gnu.org changed: What|Removed |Added Status|UNCONFIRMED |WAITING Last reconfirmed||2012-01-11 Ever Confirmed|0 |1 Known to fail|| --- Comment #6 from Richard Guenther rguenth at gcc dot gnu.org 2012-01-11 14:54:03 UTC --- Is this still an issue?
[Bug debug/24943] [hppa64] Bad dwarf output using non-preserved base register
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24943 --- Comment #7 from dave.anglin at bell dot net 2012-01-11 16:29:48 UTC --- On 1/11/2012 9:54 AM, rguenth at gcc dot gnu.org wrote: Is this still an issue? Yes.
[Bug debug/24943] [hppa64] Bad dwarf output using non-preserved base register
--- Comment #5 from tausq at debian dot org 2006-03-20 02:34 --- Indeed, as Dave said this is a different and not yet fixed problem. -- tausq at debian dot org changed: What|Removed |Added Known to fail|3.3.4 4.0.1 |3.3.4 4.0.1 4.1.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24943
[Bug debug/24943] [hppa64] Bad dwarf output using non-preserved base register
--- Comment #3 from pinskia at gcc dot gnu dot org 2006-03-18 17:31 --- I thought this was fixed for 4.1.0. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Known to fail|3.3.4 4.0.1 4.1.0 |3.3.4 4.0.1 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24943
[Bug debug/24943] [hppa64] Bad dwarf output using non-preserved base register
--- Comment #4 from dave at hiauly1 dot hia dot nrc dot ca 2006-03-18 17:57 --- Subject: Re: [hppa64] Bad dwarf output using non-preserved base register --- Comment #3 from pinskia at gcc dot gnu dot org 2006-03-18 17:31 --- I thought this was fixed for 4.1.0. I don't think so. It was another dwarf2 report filed by Randolph involving the passing of structs that Jim Wilson fixed. Dave -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24943
[Bug debug/24943] [hppa64] Bad dwarf output using non-preserved base register
--- Comment #2 from tausq at debian dot org 2005-12-08 05:26 --- Some discussion about this PR is here: http://gcc.gnu.org/ml/gcc-patches/2005-11/msg01563.html -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24943
[Bug debug/24943] [hppa64] Bad dwarf output using non-preserved base register
--- Comment #1 from tausq at debian dot org 2005-11-20 03:38 --- I forgot to mention that the above was compiled with gcc -g -o dwarfbug dwarfbug.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24943