public inbox for gdb-prs@sourceware.org
help / color / mirror / Atom feed
* [Bug testsuite/29161] New: [gcc-12] FAIL: gdb.opt/clobbered-registers-O2.exp: print operand0
@ 2022-05-20 9:35 vries at gcc dot gnu.org
2022-05-20 9:38 ` [Bug testsuite/29161] " vries at gcc dot gnu.org
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: vries at gcc dot gnu.org @ 2022-05-20 9:35 UTC (permalink / raw)
To: gdb-prs
https://sourceware.org/bugzilla/show_bug.cgi?id=29161
Bug ID: 29161
Summary: [gcc-12] FAIL: gdb.opt/clobbered-registers-O2.exp:
print operand0
Product: gdb
Version: HEAD
Status: NEW
Severity: normal
Priority: P2
Component: testsuite
Assignee: unassigned at sourceware dot org
Reporter: vries at gcc dot gnu.org
Target Milestone: ---
On openSUSE Tumbleweed, with gcc-12, I run into:
...
FAIL: gdb.opt/clobbered-registers-O2.exp: print operand0
FAIL: gdb.opt/clobbered-registers-O2.exp: print operand1
...
while these pass when using gcc-11 instead.
Also fail with gcc-12 when forcing dwarf-4 as in gcc-11.
In more detail, with gcc-11:
...
print operand0^M
$1 = (unsigned int *) 0x7fffffffcd50^M
(gdb) print *operand0^M
$2 = 13^M
(gdb) PASS: gdb.opt/clobbered-registers-O2.exp: print operand0
print operand1^M
$3 = (unsigned int *) 0x7fffffffcd54^M
(gdb) print *operand1^M
$4 = 14^M
(gdb) PASS: gdb.opt/clobbered-registers-O2.exp: print operand1
...
and with gcc-12:
...
print operand0^M
$1 = (unsigned int *) 0x7fffffffcfb0^M
(gdb) print *operand0^M
$2 = 4198725^M
(gdb) FAIL: gdb.opt/clobbered-registers-O2.exp: print operand0
print operand1^M
$3 = (unsigned int *) 0x7fffffffcfb4^M
(gdb) print *operand1^M
$4 = 0^M
(gdb) FAIL: gdb.opt/clobbered-registers-O2.exp: print operand1
...
A significant difference between the two execs is that the assignments to x and
y are optimized away: gcc-11:
...
0000000000401020 <main>:
401020: 48 83 ec 10 sub $0x10,%rsp
401024: 48 8d 74 24 0c lea 0xc(%rsp),%rsi
401029: 48 8d 7c 24 08 lea 0x8(%rsp),%rdi
40102e: c7 44 24 08 0d 00 00 movl $0xd,0x8(%rsp)
401035: 00
401036: c7 44 24 0c 0e 00 00 movl $0xe,0xc(%rsp)
40103d: 00
40103e: e8 1d 01 00 00 call 401160 <gen_movsd>
401043: 48 83 c4 10 add $0x10,%rsp
401047: c3 ret
...
vs gcc-12:
...
0000000000401020 <main>:
401020: 48 8d 74 24 fc lea -0x4(%rsp),%rsi
401025: 48 8d 7c 24 f8 lea -0x8(%rsp),%rdi
40102a: e9 11 01 00 00 jmp 401140 <gen_movsd>
...
Another significant difference is the application of sibcall optimization, but
switching that off doesn't fix the fail.
This fixes the FAIL for me:
...
diff --git a/gdb/testsuite/gdb.opt/clobbered-registers-O2.c
b/gdb/testsuite/gdb.opt/cl
obbered-registers-O2.c
index 7776024eb90..83cf2267d1e 100644
--- a/gdb/testsuite/gdb.opt/clobbered-registers-O2.c
+++ b/gdb/testsuite/gdb.opt/clobbered-registers-O2.c
@@ -33,7 +33,7 @@ gen_movsd (unsigned * operand0, unsigned * operand1)
int main(void)
{
- unsigned x, y;
+ volatile unsigned x, y;
x = 13;
y = 14;
...
--
You are receiving this mail because:
You are on the CC list for the bug.
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Bug testsuite/29161] [gcc-12] FAIL: gdb.opt/clobbered-registers-O2.exp: print operand0
2022-05-20 9:35 [Bug testsuite/29161] New: [gcc-12] FAIL: gdb.opt/clobbered-registers-O2.exp: print operand0 vries at gcc dot gnu.org
@ 2022-05-20 9:38 ` vries at gcc dot gnu.org
2022-05-24 14:40 ` vries at gcc dot gnu.org
2022-05-24 20:43 ` vries at gcc dot gnu.org
2 siblings, 0 replies; 4+ messages in thread
From: vries at gcc dot gnu.org @ 2022-05-20 9:38 UTC (permalink / raw)
To: gdb-prs
https://sourceware.org/bugzilla/show_bug.cgi?id=29161
Tom de Vries <vries at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |luis.machado at arm dot com
--- Comment #1 from Tom de Vries <vries at gcc dot gnu.org> ---
(In reply to Tom de Vries from comment #0)
> int main(void)
> {
> - unsigned x, y;
> + volatile unsigned x, y;
>
> x = 13;
> y = 14;
> ...
AFAICT, although the test-case is supposed to test optimized code, and the fix
disables an optimization, the focus is on debug info in functions other than
main, so disabling this specific optimization should be ok.
--
You are receiving this mail because:
You are on the CC list for the bug.
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Bug testsuite/29161] [gcc-12] FAIL: gdb.opt/clobbered-registers-O2.exp: print operand0
2022-05-20 9:35 [Bug testsuite/29161] New: [gcc-12] FAIL: gdb.opt/clobbered-registers-O2.exp: print operand0 vries at gcc dot gnu.org
2022-05-20 9:38 ` [Bug testsuite/29161] " vries at gcc dot gnu.org
@ 2022-05-24 14:40 ` vries at gcc dot gnu.org
2022-05-24 20:43 ` vries at gcc dot gnu.org
2 siblings, 0 replies; 4+ messages in thread
From: vries at gcc dot gnu.org @ 2022-05-24 14:40 UTC (permalink / raw)
To: gdb-prs
https://sourceware.org/bugzilla/show_bug.cgi?id=29161
--- Comment #2 from Tom de Vries <vries at gcc dot gnu.org> ---
(In reply to Tom de Vries from comment #1)
> (In reply to Tom de Vries from comment #0)
> > int main(void)
> > {
> > - unsigned x, y;
> > + volatile unsigned x, y;
> >
> > x = 13;
> > y = 14;
> > ...
>
>
> AFAICT, although the test-case is supposed to test optimized code, and the
> fix disables an optimization, the focus is on debug info in functions other
> than main, so disabling this specific optimization should be ok.
Submitted: https://sourceware.org/pipermail/gdb-patches/2022-May/189364.html
--
You are receiving this mail because:
You are on the CC list for the bug.
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Bug testsuite/29161] [gcc-12] FAIL: gdb.opt/clobbered-registers-O2.exp: print operand0
2022-05-20 9:35 [Bug testsuite/29161] New: [gcc-12] FAIL: gdb.opt/clobbered-registers-O2.exp: print operand0 vries at gcc dot gnu.org
2022-05-20 9:38 ` [Bug testsuite/29161] " vries at gcc dot gnu.org
2022-05-24 14:40 ` vries at gcc dot gnu.org
@ 2022-05-24 20:43 ` vries at gcc dot gnu.org
2 siblings, 0 replies; 4+ messages in thread
From: vries at gcc dot gnu.org @ 2022-05-24 20:43 UTC (permalink / raw)
To: gdb-prs
https://sourceware.org/bugzilla/show_bug.cgi?id=29161
Tom de Vries <vries at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Target Milestone|--- |13.1
Resolution|--- |FIXED
--- Comment #3 from Tom de Vries <vries at gcc dot gnu.org> ---
https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=a0ae328a266d2b01ff640be9277e01592b08971a
--
You are receiving this mail because:
You are on the CC list for the bug.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2022-05-24 20:43 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-05-20 9:35 [Bug testsuite/29161] New: [gcc-12] FAIL: gdb.opt/clobbered-registers-O2.exp: print operand0 vries at gcc dot gnu.org
2022-05-20 9:38 ` [Bug testsuite/29161] " vries at gcc dot gnu.org
2022-05-24 14:40 ` vries at gcc dot gnu.org
2022-05-24 20:43 ` vries at gcc dot gnu.org
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).