public inbox for gdb-prs@sourceware.org
help / color / mirror / Atom feed
* [Bug tdep/29247] New: [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed
@ 2022-06-14  8:58 vries at gcc dot gnu.org
  2022-06-14 14:51 ` [Bug tdep/29247] " vries at gcc dot gnu.org
                   ` (29 more replies)
  0 siblings, 30 replies; 31+ messages in thread
From: vries at gcc dot gnu.org @ 2022-06-14  8:58 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=29247

            Bug ID: 29247
           Summary: [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945:
                    internal-error: ppc64_sysv_abi_return_value: Assertion
                    `ok' failed
           Product: gdb
           Version: 12.1
            Status: NEW
          Severity: normal
          Priority: P2
         Component: tdep
          Assignee: unassigned at sourceware dot org
          Reporter: vries at gcc dot gnu.org
  Target Milestone: ---

On OBS with gdb 12.1, for openSUSE Tumbleweed with gcc 12, I run into a large
number of FAILs due to a gdb internal error:
...
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/callfuncs.exp: call inferior func with struct - returns long double
_Complex (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/callfuncs.exp: noproto: call inferior func with struct - returns long
double _Complex (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tc-tld: get valueof
"rtn_str_struct_static_02_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-td-tld: get valueof
"rtn_str_struct_static_02_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tf-tld: get valueof
"rtn_str_struct_static_02_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-ti-tld: get valueof
"rtn_str_struct_static_02_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tl-tld: get valueof
"rtn_str_struct_static_02_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tld-tc: get valueof
"rtn_str_struct_static_02_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tld-td: get valueof
"rtn_str_struct_static_02_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tld-tf: get valueof
"rtn_str_struct_static_02_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tld-ti: get valueof
"rtn_str_struct_static_02_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tld-tl: get valueof
"rtn_str_struct_static_02_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tld-tld: get valueof
"rtn_str_struct_static_02_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tld-tld: get valueof
"rtn_str_struct_static_02_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tld-tld: get valueof
"rtn_str_struct_static_04_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tld-tld: get valueof
"rtn_str_struct_static_06_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tld-tll: get valueof
"rtn_str_struct_static_02_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tld-ts: get valueof
"rtn_str_struct_static_02_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tld: get valueof
"rtn_str_struct_static_02_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tld: get valueof
"rtn_str_struct_static_02_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tld: get valueof
"rtn_str_struct_static_04_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tld: get valueof
"rtn_str_struct_static_06_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tldc: get valueof
"rtn_str_struct_static_02_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tldc: get valueof
"rtn_str_struct_static_02_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tll-tld: get valueof
"rtn_str_struct_static_02_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-ts-tld: get valueof
"rtn_str_struct_static_02_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tc: get valueof
"rtn_str_struct_01_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tc: get valueof
"rtn_str_struct_01_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tc: get valueof
"rtn_str_struct_01_03 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tc: get valueof
"rtn_str_struct_01_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-td: get valueof
"rtn_str_struct_01_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-td: get valueof
"rtn_str_struct_01_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-td: get valueof
"rtn_str_struct_01_03 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-td: get valueof
"rtn_str_struct_01_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tf: get valueof
"rtn_str_struct_01_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tf: get valueof
"rtn_str_struct_01_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tf: get valueof
"rtn_str_struct_01_03 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tf: get valueof
"rtn_str_struct_01_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-ti: get valueof
"rtn_str_struct_01_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-ti: get valueof
"rtn_str_struct_01_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-ti: get valueof
"rtn_str_struct_01_03 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-ti: get valueof
"rtn_str_struct_01_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tl: get valueof
"rtn_str_struct_01_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tl: get valueof
"rtn_str_struct_01_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tl: get valueof
"rtn_str_struct_01_03 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tl: get valueof
"rtn_str_struct_01_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tld: get valueof
"rtn_str_struct_01_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tld: get valueof
"rtn_str_struct_01_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tld: get valueof
"rtn_str_struct_01_03 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tld: get valueof
"rtn_str_struct_01_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tld: get valueof
"rtn_str_struct_02_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tld: get valueof
"rtn_str_struct_02_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tld: get valueof
"rtn_str_struct_02_03 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tld: get valueof
"rtn_str_struct_02_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tld: get valueof
"rtn_str_struct_04_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tld: get valueof
"rtn_str_struct_04_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tld: get valueof
"rtn_str_struct_04_03 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tld: get valueof
"rtn_str_struct_04_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tll: get valueof
"rtn_str_struct_01_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tll: get valueof
"rtn_str_struct_01_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tll: get valueof
"rtn_str_struct_01_03 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tll: get valueof
"rtn_str_struct_01_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-ts: get valueof
"rtn_str_struct_01_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-ts: get valueof
"rtn_str_struct_01_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-ts: get valueof
"rtn_str_struct_01_03 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-ts: get valueof
"rtn_str_struct_01_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld: get valueof
"rtn_str_struct_01_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld: get valueof
"rtn_str_struct_01_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld: get valueof
"rtn_str_struct_01_03 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld: get valueof
"rtn_str_struct_01_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld: get valueof
"rtn_str_struct_02_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld: get valueof
"rtn_str_struct_02_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld: get valueof
"rtn_str_struct_02_03 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld: get valueof
"rtn_str_struct_02_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld: get valueof
"rtn_str_struct_04_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld: get valueof
"rtn_str_struct_04_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld: get valueof
"rtn_str_struct_04_03 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld: get valueof
"rtn_str_struct_04_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tldc: get valueof
"rtn_str_struct_01_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tldc: get valueof
"rtn_str_struct_01_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tldc: get valueof
"rtn_str_struct_01_03 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tldc: get valueof
"rtn_str_struct_01_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tldc: get valueof
"rtn_str_struct_02_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tldc: get valueof
"rtn_str_struct_02_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tldc: get valueof
"rtn_str_struct_02_03 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tldc: get valueof
"rtn_str_struct_02_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/structs.exp: types=tld: p/c fun<n>(); call 1 structs-tld (GDB internal
error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/structs.exp: types=tld: p/c fun<n>(); call 2 structs-tld (GDB internal
error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/structs.exp: types=tld: return foo<n>; return 1 structs-tld (GDB
internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.-fno-PIE.-no-pie.sum:FAIL:
gdb.base/varargs.exp: print find_max_long_double_real(4, ldc1, ldc2, ldc3,
ldc4) (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/callfuncs.exp: call inferior func with struct - returns long double
_Complex (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/callfuncs.exp: noproto: call inferior func with struct - returns long
double _Complex (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tc-tld: get valueof
"rtn_str_struct_static_02_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-td-tld: get valueof
"rtn_str_struct_static_02_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tf-tld: get valueof
"rtn_str_struct_static_02_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-ti-tld: get valueof
"rtn_str_struct_static_02_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tl-tld: get valueof
"rtn_str_struct_static_02_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tld-tc: get valueof
"rtn_str_struct_static_02_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tld-td: get valueof
"rtn_str_struct_static_02_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tld-tf: get valueof
"rtn_str_struct_static_02_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tld-ti: get valueof
"rtn_str_struct_static_02_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tld-tl: get valueof
"rtn_str_struct_static_02_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tld-tld: get valueof
"rtn_str_struct_static_02_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tld-tld: get valueof
"rtn_str_struct_static_02_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tld-tld: get valueof
"rtn_str_struct_static_04_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tld-tld: get valueof
"rtn_str_struct_static_06_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tld-tll: get valueof
"rtn_str_struct_static_02_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tld-ts: get valueof
"rtn_str_struct_static_02_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tld: get valueof
"rtn_str_struct_static_02_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tld: get valueof
"rtn_str_struct_static_02_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tld: get valueof
"rtn_str_struct_static_04_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tld: get valueof
"rtn_str_struct_static_06_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tldc: get valueof
"rtn_str_struct_static_02_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tldc: get valueof
"rtn_str_struct_static_02_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-tll-tld: get valueof
"rtn_str_struct_static_02_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c++.exp: types-ts-tld: get valueof
"rtn_str_struct_static_02_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tc: get valueof
"rtn_str_struct_01_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tc: get valueof
"rtn_str_struct_01_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tc: get valueof
"rtn_str_struct_01_03 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tc: get valueof
"rtn_str_struct_01_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-td: get valueof
"rtn_str_struct_01_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-td: get valueof
"rtn_str_struct_01_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-td: get valueof
"rtn_str_struct_01_03 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-td: get valueof
"rtn_str_struct_01_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tf: get valueof
"rtn_str_struct_01_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tf: get valueof
"rtn_str_struct_01_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tf: get valueof
"rtn_str_struct_01_03 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tf: get valueof
"rtn_str_struct_01_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-ti: get valueof
"rtn_str_struct_01_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-ti: get valueof
"rtn_str_struct_01_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-ti: get valueof
"rtn_str_struct_01_03 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-ti: get valueof
"rtn_str_struct_01_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tl: get valueof
"rtn_str_struct_01_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tl: get valueof
"rtn_str_struct_01_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tl: get valueof
"rtn_str_struct_01_03 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tl: get valueof
"rtn_str_struct_01_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tld: get valueof
"rtn_str_struct_01_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tld: get valueof
"rtn_str_struct_01_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tld: get valueof
"rtn_str_struct_01_03 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tld: get valueof
"rtn_str_struct_01_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tld: get valueof
"rtn_str_struct_02_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tld: get valueof
"rtn_str_struct_02_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tld: get valueof
"rtn_str_struct_02_03 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tld: get valueof
"rtn_str_struct_02_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tld: get valueof
"rtn_str_struct_04_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tld: get valueof
"rtn_str_struct_04_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tld: get valueof
"rtn_str_struct_04_03 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tld: get valueof
"rtn_str_struct_04_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tll: get valueof
"rtn_str_struct_01_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tll: get valueof
"rtn_str_struct_01_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tll: get valueof
"rtn_str_struct_01_03 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-tll: get valueof
"rtn_str_struct_01_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-ts: get valueof
"rtn_str_struct_01_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-ts: get valueof
"rtn_str_struct_01_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-ts: get valueof
"rtn_str_struct_01_03 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld-ts: get valueof
"rtn_str_struct_01_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld: get valueof
"rtn_str_struct_01_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld: get valueof
"rtn_str_struct_01_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld: get valueof
"rtn_str_struct_01_03 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld: get valueof
"rtn_str_struct_01_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld: get valueof
"rtn_str_struct_02_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld: get valueof
"rtn_str_struct_02_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld: get valueof
"rtn_str_struct_02_03 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld: get valueof
"rtn_str_struct_02_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld: get valueof
"rtn_str_struct_04_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld: get valueof
"rtn_str_struct_04_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld: get valueof
"rtn_str_struct_04_03 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tld: get valueof
"rtn_str_struct_04_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tldc: get valueof
"rtn_str_struct_01_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tldc: get valueof
"rtn_str_struct_01_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tldc: get valueof
"rtn_str_struct_01_03 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tldc: get valueof
"rtn_str_struct_01_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tldc: get valueof
"rtn_str_struct_02_01 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tldc: get valueof
"rtn_str_struct_02_02 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tldc: get valueof
"rtn_str_struct_02_03 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/infcall-nested-structs-c.exp: types-tldc: get valueof
"rtn_str_struct_02_04 ()" (GDB internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/structs.exp: types=tld: p/c fun<n>(); call 1 structs-tld (GDB internal
error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/structs.exp: types=tld: p/c fun<n>(); call 2 structs-tld (GDB internal
error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/structs.exp: types=tld: return foo<n>; return 1 structs-tld (GDB
internal error)
binaries-testsuite.openSUSE_Factory_PPC.ppc64le/gdb-testresults/gdb-ppc64le-suse-linux-m64.sum:FAIL:
gdb.base/varargs.exp: print find_max_long_double_real(4, ldc1, ldc2, ldc3,
ldc4) (GDB internal error)
...

In more detail:
...
(gdb) PASS: gdb.base/callfuncs.exp: call inferior func with struct - returns
double _Complex
p t_structs_ldc(struct_val1)^M
../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value:
Assertion `ok' failed.^M
A problem internal to GDB has been detected,^M
further debugging may prove unreliable.^M
...

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [Bug tdep/29247] [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed
  2022-06-14  8:58 [Bug tdep/29247] New: [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed vries at gcc dot gnu.org
@ 2022-06-14 14:51 ` vries at gcc dot gnu.org
  2022-06-15 11:59 ` vries at gcc dot gnu.org
                   ` (28 subsequent siblings)
  29 siblings, 0 replies; 31+ messages in thread
From: vries at gcc dot gnu.org @ 2022-06-14 14:51 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=29247

Tom de Vries <vries at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |kevinb at sourceware dot org

--- Comment #1 from Tom de Vries <vries at gcc dot gnu.org> ---
I had problems reproducing this, so I write an all-arch selftest:
...
diff --git a/gdb/gdbarch-selftests.c b/gdb/gdbarch-selftests.c
index 198346bddec..8b6b4c708ab 100644
--- a/gdb/gdbarch-selftests.c
+++ b/gdb/gdbarch-selftests.c
@@ -122,6 +122,19 @@ register_to_value_test (struct gdbarch *gdbarch)
     }
 }

+static void
+blabla (struct gdbarch *gdbarch)
+{
+  struct type *t = builtin_type (gdbarch)->builtin_long_double;
+  struct type *c = init_complex_type ("complex long double", t);
+  struct type *f = lookup_function_type (c);
+  struct value *v
+    = allocate_value_lazy (f);
+
+  gdbarch_return_value (gdbarch, v, c, nullptr, nullptr, nullptr);
+}
+
 } // namespace selftests

 void _initialize_gdbarch_selftests ();
@@ -130,4 +143,6 @@ _initialize_gdbarch_selftests ()
 {
   selftests::register_test_foreach_arch ("register_to_value",
                                         selftests::register_to_value_test);
+  selftests::register_test_foreach_arch ("blabla",
+                                        selftests::blabla);
 }
...

And then downgraded the ok asserts in ppc64_sysv_abi_return_value to errors,
which can be caught:
...
diff --git a/gdb/ppc-sysv-tdep.c b/gdb/ppc-sysv-tdep.c
index 6c2fd1bfc99..c0bfd8bcbbd 100644
--- a/gdb/ppc-sysv-tdep.c
+++ b/gdb/ppc-sysv-tdep.c
@@ -1942,7 +1942,9 @@ ppc64_sysv_abi_return_value (struct gdbarch *gdbarch
, struct value *function,
        {
          ok = ppc64_sysv_abi_return_value_base (gdbarch, eltype, regcache,
                                                 readbuf, writebuf, i);
-         gdb_assert (ok);
+         if (!ok)
+           error ("ppc64_sysv_abi_return_value problem");
+

          if (readbuf)
            readbuf += TYPE_LENGTH (eltype);
@@ -1968,7 +1970,8 @@ ppc64_sysv_abi_return_value (struct gdbarch *gdbarch
, struct value *function,
        {
          ok = ppc64_sysv_abi_return_value_base (gdbarch, eltype, regcache,
                                                 readbuf, writebuf, i);
-         gdb_assert (ok);
+         if (!ok)
+           error ("ppc64_sysv_abi_return_value problem");

          if (readbuf)
            readbuf += TYPE_LENGTH (eltype);
@@ -2024,7 +2027,8 @@ ppc64_sysv_abi_return_value (struct gdbarch *gdbarch
, struct value *function,
        {
          ok = ppc64_sysv_abi_return_value_base (gdbarch, eltype, regcache,
                                                 readbuf, writebuf, i);
-         gdb_assert (ok);
+         if (!ok)
+           error ("ppc64_sysv_abi_return_value problem");

          if (readbuf)
            readbuf += TYPE_LENGTH (eltype);
...

I get fails only for the powerpc architecture:
...
$ ./gdb.sh -q -batch -ex "maint selftest blabla" 2>&1 | grep -B1 failed
Running selftest blabla::powerpc:620.
Self test failed: ppc64_sysv_abi_return_value problem
Running selftest blabla::powerpc:630.
Self test failed: ppc64_sysv_abi_return_value problem
--
Running selftest blabla::powerpc:a35.
Self test failed: ppc64_sysv_abi_return_value problem
--
Running selftest blabla::powerpc:common64.
Self test failed: ppc64_sysv_abi_return_value problem
--
Running selftest blabla::powerpc:rs64ii.
Self test failed: ppc64_sysv_abi_return_value problem
Running selftest blabla::powerpc:rs64iii.
Self test failed: ppc64_sysv_abi_return_value problem
--
Running selftest blabla::z80n.
Ran 355 unit tests, 6 failed
...

By debugging and comparing with a passing instance, I narrowed down the
difference to:
...
  /* IBM long double stored in two consecutive FPRs.  */
  if (TYPE_LENGTH (valtype) == 16
      && valtype->code () == TYPE_CODE_FLT
      && (gdbarch_long_double_format (gdbarch)
          == floatformats_ibm_long_double))
    {
...
which is triggered in the passing case, but for the selftest fails because:
...
(gdb) p gdbarch_long_double_format (gdbarch)
$2 = (const floatformat **) 0x2707860 <floatformats_ieee_double>
...
and then no other case triggers.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [Bug tdep/29247] [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed
  2022-06-14  8:58 [Bug tdep/29247] New: [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed vries at gcc dot gnu.org
  2022-06-14 14:51 ` [Bug tdep/29247] " vries at gcc dot gnu.org
@ 2022-06-15 11:59 ` vries at gcc dot gnu.org
  2022-06-15 13:27 ` vries at gcc dot gnu.org
                   ` (27 subsequent siblings)
  29 siblings, 0 replies; 31+ messages in thread
From: vries at gcc dot gnu.org @ 2022-06-15 11:59 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=29247

--- Comment #2 from Tom de Vries <vries at gcc dot gnu.org> ---
(In reply to Tom de Vries from comment #1)
> I had problems reproducing this, so I write an all-arch selftest:

Submitted RFC for the selftest:
https://sourceware.org/pipermail/gdb-patches/2022-June/190114.html

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [Bug tdep/29247] [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed
  2022-06-14  8:58 [Bug tdep/29247] New: [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed vries at gcc dot gnu.org
  2022-06-14 14:51 ` [Bug tdep/29247] " vries at gcc dot gnu.org
  2022-06-15 11:59 ` vries at gcc dot gnu.org
@ 2022-06-15 13:27 ` vries at gcc dot gnu.org
  2022-06-15 14:47 ` vries at gcc dot gnu.org
                   ` (26 subsequent siblings)
  29 siblings, 0 replies; 31+ messages in thread
From: vries at gcc dot gnu.org @ 2022-06-15 13:27 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=29247

--- Comment #3 from Tom de Vries <vries at gcc dot gnu.org> ---
(In reply to Tom de Vries from comment #2)
> (In reply to Tom de Vries from comment #1)
> > I had problems reproducing this, so I write an all-arch selftest:
> 
> Submitted RFC for the selftest:
> https://sourceware.org/pipermail/gdb-patches/2022-June/190114.html

So my guess is now that this PR is reproduced by the selftest plus:
...
diff --git a/gdb/gdbarch.c b/gdb/gdbarch.c
index 68ef0480219..187104e703c 100644
--- a/gdb/gdbarch.c
+++ b/gdb/gdbarch.c
@@ -409,7 +409,7 @@ verify_gdbarch (struct gdbarch *gdbarch)
     gdbarch->double_format = floatformats_ieee_double;
   /* Skip verify of long_double_bit, invalid_p == 0 */
   if (gdbarch->long_double_format == 0)
-    gdbarch->long_double_format = floatformats_ieee_double;
+    gdbarch->long_double_format = floatformats_ieee_quad;
   /* Skip verify of wchar_bit, invalid_p == 0 */
   if (gdbarch->wchar_signed == -1)
     gdbarch->wchar_signed = 1;
...

Note that using floatformats_ibm_long_double here instead fixes the osabi=none
failure.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [Bug tdep/29247] [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed
  2022-06-14  8:58 [Bug tdep/29247] New: [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed vries at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2022-06-15 13:27 ` vries at gcc dot gnu.org
@ 2022-06-15 14:47 ` vries at gcc dot gnu.org
  2022-06-15 14:51 ` vries at gcc dot gnu.org
                   ` (25 subsequent siblings)
  29 siblings, 0 replies; 31+ messages in thread
From: vries at gcc dot gnu.org @ 2022-06-15 14:47 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=29247

--- Comment #4 from Tom de Vries <vries at gcc dot gnu.org> ---
Created attachment 14145
  --> https://sourceware.org/bugzilla/attachment.cgi?id=14145&action=edit
Patch that makes print foo() do as much checking as possible in absence of
process

I managed to reproduce in a cross setting.

1.
Use platform openSUSE Tumbleweed x86_64.

2.
Reproducer:
...
cat min.c
long double _Complex
foo ()
{
  return 1.0;
}
...

3.
Use powerpc64le-suse-linux-gcc-12 from package cross-ppc64le-gcc12:
...
$ powerpc64le-suse-linux-gcc-12 min.c -O2 -c -g
...

4.
Note the gnu attributes:
...
$ readelf -a min.o
...
Attribute Section: gnu
File Attributes
  Tag_GNU_Power_ABI_FP: hard float, 128-bit IEEE long double
...

5.
Build gdb with patch, to make print foo() to as much checking as possible in
absence of process.

6.
Reproduce:
...
$ gdb -q -batch min.o -ex "show osabi" -ex "show arch" -ex "print foo()" 
The current OS ABI is "auto" (currently "GNU/Linux").
The default OS ABI is "GNU/Linux".
The target architecture is set to "auto" (currently "powerpc:common64").
warning: No process, proceed with type checking
src/gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value:
Assertion `ok' failed.
...

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [Bug tdep/29247] [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed
  2022-06-14  8:58 [Bug tdep/29247] New: [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed vries at gcc dot gnu.org
                   ` (3 preceding siblings ...)
  2022-06-15 14:47 ` vries at gcc dot gnu.org
@ 2022-06-15 14:51 ` vries at gcc dot gnu.org
  2022-06-15 15:49 ` vries at gcc dot gnu.org
                   ` (24 subsequent siblings)
  29 siblings, 0 replies; 31+ messages in thread
From: vries at gcc dot gnu.org @ 2022-06-15 14:51 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=29247

Tom de Vries <vries at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |uweigand at sourceware dot org

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [Bug tdep/29247] [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed
  2022-06-14  8:58 [Bug tdep/29247] New: [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed vries at gcc dot gnu.org
                   ` (4 preceding siblings ...)
  2022-06-15 14:51 ` vries at gcc dot gnu.org
@ 2022-06-15 15:49 ` vries at gcc dot gnu.org
  2022-06-15 15:59 ` vries at gcc dot gnu.org
                   ` (23 subsequent siblings)
  29 siblings, 0 replies; 31+ messages in thread
From: vries at gcc dot gnu.org @ 2022-06-15 15:49 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=29247

--- Comment #5 from Tom de Vries <vries at gcc dot gnu.org> ---
Reproduced with gdb 11.1 as well.

This originally looked like a regression to me, but that was due to comparing
with results made with a gcc without --with-long-double-format=ieee.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [Bug tdep/29247] [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed
  2022-06-14  8:58 [Bug tdep/29247] New: [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed vries at gcc dot gnu.org
                   ` (5 preceding siblings ...)
  2022-06-15 15:49 ` vries at gcc dot gnu.org
@ 2022-06-15 15:59 ` vries at gcc dot gnu.org
  2022-06-15 22:47 ` vries at gcc dot gnu.org
                   ` (22 subsequent siblings)
  29 siblings, 0 replies; 31+ messages in thread
From: vries at gcc dot gnu.org @ 2022-06-15 15:59 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=29247

--- Comment #6 from Tom de Vries <vries at gcc dot gnu.org> ---
I tried the min.c example as well without the _Complex, so using long double.

But stepping through ppc64_sysv_abi_return_value, I found that the default
RETURN_VALUE_STRUCT_CONVENTION is returned, which does not look correct, given
that AFAIU the disassembly, registers are used.

I went to check what the output was with gdb.base/callfuncs.exp, and found that
while complex long double is tested, long double is not.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [Bug tdep/29247] [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed
  2022-06-14  8:58 [Bug tdep/29247] New: [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed vries at gcc dot gnu.org
                   ` (6 preceding siblings ...)
  2022-06-15 15:59 ` vries at gcc dot gnu.org
@ 2022-06-15 22:47 ` vries at gcc dot gnu.org
  2022-06-16 13:53 ` jamborm at gcc dot gnu.org
                   ` (21 subsequent siblings)
  29 siblings, 0 replies; 31+ messages in thread
From: vries at gcc dot gnu.org @ 2022-06-15 22:47 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=29247

--- Comment #7 from Tom de Vries <vries at gcc dot gnu.org> ---
I finally remembered that I can use osc to build the gdb package for the
tumbleweed distro, even if the powerpc machine isn't running tumbleweed.

So, I managed to reproduce with the possibility to debug and try out fixes.

As a first try, I added this code:
...
  if (tdep->elf_abi == POWERPC_ELF_V2
      && TYPE_LENGTH (valtype) == 16
      && valtype->code () == TYPE_CODE_FLT
      && (gdbarch_long_double_format (gdbarch)
          == floatformats_ia64_quad))
    {
      int regnum = tdep->ppc_vsr0_regnum + 32 + 2 + index;

      if (writebuf != NULL)
        {
          regcache->cooked_write (regnum, writebuf);
        }
      if (readbuf != NULL)
        {
          regcache->cooked_read (regnum, readbuf);
        }
      return 1;
    }
...
and that fixes the problem at hand, iow:
...
$ gdb -q -batch -ex start -ex "p t_structs_ldc(struct_val1)" \ 
    ./gdb/testsuite.unix.-m64/outputs/gdb.base/callfuncs/callfuncs
Temporary breakpoint 1 at 0x4ce4: file gdb/testsuite/gdb.base/callfuncs.c, line
647.
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".

Temporary breakpoint 1, main () at
/home/abuild/rpmbuild/BUILD/gdb-11.1/gdb/testsuite/gdb.base/callfuncs.c:647
647       void *p = malloc (1);
$1 = 5 + 5i
...

I'm not sure if the tdep->elf_abi == POWERPC_ELF_V2 and
gdbarch_long_double_format (gdbarch) == floatformats_ia64_quad are both
necessary.

Still, four fails lefts:
...
FAIL: gdb.base/callfuncs.exp: p t_long_double_complex_values(ldc1, ldc2)
FAIL: gdb.base/callfuncs.exp: p t_long_double_complex_many_args(ldc1, ldc2,
ldc3, ldc4, ldc1, ldc2, ldc3, ldc4, ldc1, ldc2, ldc3, ldc4, ldc1, ldc2, ldc3,
ldc4)
FAIL: gdb.base/callfuncs.exp: noproto: p t_long_double_complex_values(ldc1,
ldc2)
FAIL: gdb.base/callfuncs.exp: noproto: p t_long_double_complex_many_args(ldc1,
ldc2, ldc3, ldc4, ldc1, ldc2, ldc3, ldc4, ldc1, ldc2, ldc3, ldc4, ldc1, ldc2,
ldc3, ldc4)
...

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [Bug tdep/29247] [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed
  2022-06-14  8:58 [Bug tdep/29247] New: [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed vries at gcc dot gnu.org
                   ` (7 preceding siblings ...)
  2022-06-15 22:47 ` vries at gcc dot gnu.org
@ 2022-06-16 13:53 ` jamborm at gcc dot gnu.org
  2022-06-20 12:25 ` ulrich.weigand at de dot ibm.com
                   ` (20 subsequent siblings)
  29 siblings, 0 replies; 31+ messages in thread
From: jamborm at gcc dot gnu.org @ 2022-06-16 13:53 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=29247

Martin Jambor <jamborm at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jamborm at gcc dot gnu.org

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [Bug tdep/29247] [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed
  2022-06-14  8:58 [Bug tdep/29247] New: [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed vries at gcc dot gnu.org
                   ` (8 preceding siblings ...)
  2022-06-16 13:53 ` jamborm at gcc dot gnu.org
@ 2022-06-20 12:25 ` ulrich.weigand at de dot ibm.com
  2022-06-21 16:32 ` cel at us dot ibm.com
                   ` (19 subsequent siblings)
  29 siblings, 0 replies; 31+ messages in thread
From: ulrich.weigand at de dot ibm.com @ 2022-06-20 12:25 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=29247

ulrich.weigand at de dot ibm.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |ulrich.weigand at de dot ibm.com

--- Comment #8 from ulrich.weigand at de dot ibm.com ---
(In reply to Tom de Vries from comment #7)
> I finally remembered that I can use osc to build the gdb package for the
> tumbleweed distro, even if the powerpc machine isn't running tumbleweed.

Thanks for looking into this!  It seems we indeed forgot to add support for
IEEE long double to ppc-sysv-tdep.c ...

> As a first try, I added this code:
> ...
>   if (tdep->elf_abi == POWERPC_ELF_V2
>       && TYPE_LENGTH (valtype) == 16
>       && valtype->code () == TYPE_CODE_FLT
>       && (gdbarch_long_double_format (gdbarch)
>           == floatformats_ia64_quad))
>     {
>       int regnum = tdep->ppc_vsr0_regnum + 32 + 2 + index;
> 
>       if (writebuf != NULL)
>         {
>           regcache->cooked_write (regnum, writebuf);
>         }
>       if (readbuf != NULL)
>         {
>           regcache->cooked_read (regnum, readbuf);
>         }
>       return 1;
>     }

This looks good to me, except for:

> I'm not sure if the tdep->elf_abi == POWERPC_ELF_V2 and
> gdbarch_long_double_format (gdbarch) == floatformats_ia64_quad are both
> necessary.

I don't think the elf_abi check is needed, the floatformat check should be
enough.

> Still, four fails lefts:
> ...
> FAIL: gdb.base/callfuncs.exp: p t_long_double_complex_values(ldc1, ldc2)
> FAIL: gdb.base/callfuncs.exp: p t_long_double_complex_many_args(ldc1, ldc2,
> ldc3, ldc4, ldc1, ldc2, ldc3, ldc4, ldc1, ldc2, ldc3, ldc4, ldc1, ldc2,
> ldc3, ldc4)
> FAIL: gdb.base/callfuncs.exp: noproto: p t_long_double_complex_values(ldc1,
> ldc2)
> FAIL: gdb.base/callfuncs.exp: noproto: p
> t_long_double_complex_many_args(ldc1, ldc2, ldc3, ldc4, ldc1, ldc2, ldc3,
> ldc4, ldc1, ldc2, ldc3, ldc4, ldc1, ldc2, ldc3, ldc4)
> ...


There are more places in ppc-sysv-tdep.c that need to handle IEEE long double,
in particular ppc64_sysv_abi_push_freg and ppc64_sysv_abi_return_value_base. 
Those should hopefully fix the above inferior call tests.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [Bug tdep/29247] [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed
  2022-06-14  8:58 [Bug tdep/29247] New: [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed vries at gcc dot gnu.org
                   ` (9 preceding siblings ...)
  2022-06-20 12:25 ` ulrich.weigand at de dot ibm.com
@ 2022-06-21 16:32 ` cel at us dot ibm.com
  2022-06-23 15:19 ` cel at us dot ibm.com
                   ` (18 subsequent siblings)
  29 siblings, 0 replies; 31+ messages in thread
From: cel at us dot ibm.com @ 2022-06-21 16:32 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=29247

Carl E Love <cel at us dot ibm.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |cel at us dot ibm.com

--- Comment #9 from Carl E Love <cel at us dot ibm.com> ---
Tom, we upgreaded one of our Power 10 boxes from Fedora 35 to 36 a week or so
ago.  I noticed that test started failing.  It hits the assert on the ok as you
mentioned.  I was just starting to dig into the issue when Will mentioned this
issue.  Anyway, I was trying to figure out how to add your fix from comment 7. 
I tried putting it in but I get a compile error on floatformats_ia64_quad.

I was wondering if you have a patch to add the code from comment 7 which also
includes the define for floatformats_ia64_quad?  I have access to a number of
Power platforms and can help test and debug the patch.  From Ulrich's comments,
it looks like there are additional places that need fixing.  I have not dug
into that yet.

Anyway, please let me know if/how I can help with this.  

   Carl Love   (cel@us.ibm.com)

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [Bug tdep/29247] [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed
  2022-06-14  8:58 [Bug tdep/29247] New: [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed vries at gcc dot gnu.org
                   ` (10 preceding siblings ...)
  2022-06-21 16:32 ` cel at us dot ibm.com
@ 2022-06-23 15:19 ` cel at us dot ibm.com
  2022-06-23 15:22 ` cel at us dot ibm.com
                   ` (17 subsequent siblings)
  29 siblings, 0 replies; 31+ messages in thread
From: cel at us dot ibm.com @ 2022-06-23 15:19 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=29247

--- Comment #10 from Carl E Love <cel at us dot ibm.com> ---
Looking at the code from Tom and the comments from Ulrich, it appears that we
just need to check for floatformats_ieee_quad in addition to the check for
floatformats_ibm_long_double.  

I created a patch to change the check for floatformats_ibm_long_double to check
for both.  The patch fixes the assert issue.  However, there does appear to be
an additional issue with printing the value of long double _Complex with a
format of
"d".  

p/d check_arg_struct_01_01 (ref_val_struct_01_01)
$1 = 0
(gdb) FAIL: gdb.base/infcall-nested-structs-c.exp: types-tldc: p/d
check_arg_struct_01_01 (ref_val_struct_01_01)

I notice that the prints fail for:

complex, int, length 4
complex, float, length 16

in all cases we have:
      gdbarch_long_double_format (gdbarch) == floatformats_ieee_quad

I added Tom's self test to gdb.  With my patch that is checking for IBM long
double and ieee quad, the self test causes gdb to assert on the ok.  In that
case, I see the value is complex, floating point, length 16 and
gdbarch_long_double_format (gdbarch) is mapped to floatformats_ieee_double
which appears to be consistent with Tom's result. 

It looks to me as the self test is not being compiled with the correct setting
for gdbarch_long_double_format (gdbarch)?  I have not figure out why yet,
thoughts?

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [Bug tdep/29247] [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed
  2022-06-14  8:58 [Bug tdep/29247] New: [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed vries at gcc dot gnu.org
                   ` (11 preceding siblings ...)
  2022-06-23 15:19 ` cel at us dot ibm.com
@ 2022-06-23 15:22 ` cel at us dot ibm.com
  2022-06-23 15:30 ` ulrich.weigand at de dot ibm.com
                   ` (16 subsequent siblings)
  29 siblings, 0 replies; 31+ messages in thread
From: cel at us dot ibm.com @ 2022-06-23 15:22 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=29247

--- Comment #11 from Carl E Love <cel at us dot ibm.com> ---
Created attachment 14163
  --> https://sourceware.org/bugzilla/attachment.cgi?id=14163&action=edit
patch to check for IEEE quad and IBM long double

Patch to add IEEE quad checking to gdb/ppc-sysv-tdep.c

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [Bug tdep/29247] [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed
  2022-06-14  8:58 [Bug tdep/29247] New: [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed vries at gcc dot gnu.org
                   ` (12 preceding siblings ...)
  2022-06-23 15:22 ` cel at us dot ibm.com
@ 2022-06-23 15:30 ` ulrich.weigand at de dot ibm.com
  2022-06-23 19:56 ` cel at us dot ibm.com
                   ` (15 subsequent siblings)
  29 siblings, 0 replies; 31+ messages in thread
From: ulrich.weigand at de dot ibm.com @ 2022-06-23 15:30 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=29247

--- Comment #12 from ulrich.weigand at de dot ibm.com ---
(In reply to Carl E Love from comment #10)
> Looking at the code from Tom and the comments from Ulrich, it appears that
> we just need to check for floatformats_ieee_quad in addition to the check
> for floatformats_ibm_long_double.  

I don't think this is correct.

The calling convention for 128-bit IEEE floating-point is *different* than the
calling convention for 128-bit IBM floating-point, so it's not enough to just
add to the test, you actually need to implement the IEEE calling convention!

While 128-bit IBM floating-point values are passed in a pair of floating-point
registers, 128-bit IEEE floating-point values are passed in a single vector
register.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [Bug tdep/29247] [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed
  2022-06-14  8:58 [Bug tdep/29247] New: [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed vries at gcc dot gnu.org
                   ` (13 preceding siblings ...)
  2022-06-23 15:30 ` ulrich.weigand at de dot ibm.com
@ 2022-06-23 19:56 ` cel at us dot ibm.com
  2022-06-24  0:53 ` cel at us dot ibm.com
                   ` (14 subsequent siblings)
  29 siblings, 0 replies; 31+ messages in thread
From: cel at us dot ibm.com @ 2022-06-23 19:56 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=29247

--- Comment #13 from Carl E Love <cel at us dot ibm.com> ---
Yes, I hadn't considered they might use different calling conventions. 
Checking the 64-bit ABI, it says:

the IEEE binary 128-bit quad precision type is IEEE 128-bit quad-precision
float, page 8. Page 39 says "Parameters and function results in IEEE BINARY 128
QUADRUPLE PRECISION format shall be passed in a single 128-bit vector register
as if they were vector values."  

The IBM extended precision format says, "Parameters and function results in the
IBM EXTENDED PRECISION format with a pair of two double-precision
floating-point values shall be passed in two successive floating-point
registers."

So yea, we need to consider the differences.  Perhaps that will fix the
printing issue I had???

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [Bug tdep/29247] [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed
  2022-06-14  8:58 [Bug tdep/29247] New: [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed vries at gcc dot gnu.org
                   ` (14 preceding siblings ...)
  2022-06-23 19:56 ` cel at us dot ibm.com
@ 2022-06-24  0:53 ` cel at us dot ibm.com
  2022-06-24 11:53 ` ulrich.weigand at de dot ibm.com
                   ` (13 subsequent siblings)
  29 siblings, 0 replies; 31+ messages in thread
From: cel at us dot ibm.com @ 2022-06-24  0:53 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=29247

Carl E Love <cel at us dot ibm.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #14163|0                           |1
        is obsolete|                            |

--- Comment #14 from Carl E Love <cel at us dot ibm.com> ---
Created attachment 14164
  --> https://sourceware.org/bugzilla/attachment.cgi?id=14164&action=edit
Add IEEE support for float 128-bit

Went back and redid the patch to add IEEE support.  The updated patch adds the
IEEE support for passing the arguments via a vector register.

The patch fixes the assertion error, but I still get a number of failures
printing the values.  I am still missing something in the ABI support.  At this
point, I am not sure what is wrong/missing in the patch?

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [Bug tdep/29247] [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed
  2022-06-14  8:58 [Bug tdep/29247] New: [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed vries at gcc dot gnu.org
                   ` (15 preceding siblings ...)
  2022-06-24  0:53 ` cel at us dot ibm.com
@ 2022-06-24 11:53 ` ulrich.weigand at de dot ibm.com
  2022-06-25  0:42 ` cel at us dot ibm.com
                   ` (12 subsequent siblings)
  29 siblings, 0 replies; 31+ messages in thread
From: ulrich.weigand at de dot ibm.com @ 2022-06-24 11:53 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=29247

--- Comment #15 from ulrich.weigand at de dot ibm.com ---
(In reply to Carl E Love from comment #14)
> Created attachment 14164 [details]
> Add IEEE support for float 128-bit
> 
> Went back and redid the patch to add IEEE support.  The updated patch adds
> the IEEE support for passing the arguments via a vector register.
> 
> The patch fixes the assertion error, but I still get a number of failures
> printing the values.  I am still missing something in the ABI support.  At
> this point, I am not sure what is wrong/missing in the patch?

The only thing that looks wrong to me is the condition in (new) line 1440.  It
seems that this erroneously no longer handles any float/double values at all
anymore.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [Bug tdep/29247] [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed
  2022-06-14  8:58 [Bug tdep/29247] New: [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed vries at gcc dot gnu.org
                   ` (16 preceding siblings ...)
  2022-06-24 11:53 ` ulrich.weigand at de dot ibm.com
@ 2022-06-25  0:42 ` cel at us dot ibm.com
  2022-06-25  2:51 ` ulrich.weigand at de dot ibm.com
                   ` (11 subsequent siblings)
  29 siblings, 0 replies; 31+ messages in thread
From: cel at us dot ibm.com @ 2022-06-25  0:42 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=29247

Carl E Love <cel at us dot ibm.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #14164|0                           |1
        is obsolete|                            |

--- Comment #16 from Carl E Love <cel at us dot ibm.com> ---
Created attachment 14167
  --> https://sourceware.org/bugzilla/attachment.cgi?id=14167&action=edit
Add IEEE support for float 128bit, version 2



> The only thing that looks wrong to me is the condition in (new) line 1440.  It
> seems that this erroneously no longer handles any float/double values at all
> anymore.

I think you are referring to this section of code?


-  if (type->code () == TYPE_CODE_FLT
+  /* IBM long double uses floating point registers for the 128-bit value.  */
+  if ((type->code () == TYPE_CODE_FLT
+       && !(gdbarch_long_double_format (gdbarch)
+           == floatformats_ieee_quad) && TYPE_LENGTH (type) == 16)
       || type->code () == TYPE_CODE_DECFLOAT)
     {

I was trying to make sure that the IEEE 128-bit case would be excluded.  I
think it was only taking that one case out.  But, it is hard to read.  I
rewrote it to make it easier to read.  By checking for the IEEE FLOAT 128-bit
case first, then TYPE_CODE_FLT you don't need to modify the existing "if
(type->code () == TYPE_CODE_FLT" statement.

I also found I had missed handling a float case.  I fixed that it reduced the
number of errors from 72 to 12.  I am not sure about the check for aggregate
candidate and homogeneous aggregate.  Not sure yet what a homogeneous
float/vector is and if I need to do something special to check for them in the
case of the IEEE FLOAT 128-bit case?

Attached latest patch.  It has a comments indicating the new code.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [Bug tdep/29247] [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed
  2022-06-14  8:58 [Bug tdep/29247] New: [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed vries at gcc dot gnu.org
                   ` (17 preceding siblings ...)
  2022-06-25  0:42 ` cel at us dot ibm.com
@ 2022-06-25  2:51 ` ulrich.weigand at de dot ibm.com
  2022-06-30 22:47 ` cel at us dot ibm.com
                   ` (10 subsequent siblings)
  29 siblings, 0 replies; 31+ messages in thread
From: ulrich.weigand at de dot ibm.com @ 2022-06-25  2:51 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=29247

--- Comment #17 from ulrich.weigand at de dot ibm.com ---
(In reply to Carl E Love from comment #16)
> Created attachment 14167 [details]

> +  /* IBM long double uses floating point registers for the 128-bit value. 
> */
> +  if ((type->code () == TYPE_CODE_FLT
> +       && !(gdbarch_long_double_format (gdbarch)
This          ^
> +	    == floatformats_ieee_quad) && TYPE_LENGTH (type) == 16)
ends here                            ^
>        || type->code () == TYPE_CODE_DECFLOAT)

making the whole thing equivalent to

 if ((type->code () == TYPE_CODE_FLT
      && gdbarch_long_double_format (gdbarch) != floatformats_ieee_quad
      && TYPE_LENGTH (type) == 16)
     || type->code () == TYPE_CODE_DECFLOAT)

so it will no longer be used at all for binary floating-point types of lengths
other than 16 bytes.


> I was trying to make sure that the IEEE 128-bit case would be excluded.  I
> think it was only taking that one case out.

No, it wasn't.

> But, it is hard to read.  I
> rewrote it to make it easier to read.  By checking for the IEEE FLOAT
> 128-bit case first, then TYPE_CODE_FLT you don't need to modify the existing
> "if (type->code () == TYPE_CODE_FLT" statement.

Sure.  It seems to me that these changes, in combination with the homogeneous
struct changes below, are quite complicated and introduce a lot of code
duplication.   Maybe it would be preferable to handle this case just once, *in*
ppc64_sysv_abi_push_freg, instead of updating all its callers.


> I also found I had missed handling a float case.  I fixed that it reduced
> the number of errors from 72 to 12.  I am not sure about the check for
> aggregate candidate and homogeneous aggregate.  Not sure yet what a
> homogeneous float/vector is and if I need to do something special to check
> for them in the case of the IEEE FLOAT 128-bit case?

Homogeneous structs are structures where all elements have the same type, and
that same type is a float or vector type.  Those structs are passed as if the
members were passed on their own.  E.g. an element of type
  struct { long double x; long double y; }
is passed exactly as if it were two arguments of "long double" type each. 
Therefore, this also does have to take IEEE vs. IBM float 128-bit into account.

The ELFv1 ABI did not support that generic homogenous struct case, but still
handled *single-element* structures likewise.


> Attached latest patch.  It has a comments indicating the new code.

There are more problems with wrong grouping, this time with '{' nesting in the
code added to ppc_sysv_abi_push_dummy_call.  Just copy (or even better,
restructure the if clauses to re-use) the vector case.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [Bug tdep/29247] [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed
  2022-06-14  8:58 [Bug tdep/29247] New: [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed vries at gcc dot gnu.org
                   ` (18 preceding siblings ...)
  2022-06-25  2:51 ` ulrich.weigand at de dot ibm.com
@ 2022-06-30 22:47 ` cel at us dot ibm.com
  2022-07-12  9:15 ` ulrich.weigand at de dot ibm.com
                   ` (9 subsequent siblings)
  29 siblings, 0 replies; 31+ messages in thread
From: cel at us dot ibm.com @ 2022-06-30 22:47 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=29247

Carl E Love <cel at us dot ibm.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #14167|0                           |1
        is obsolete|                            |

--- Comment #18 from Carl E Love <cel at us dot ibm.com> ---
Created attachment 14186
  --> https://sourceware.org/bugzilla/attachment.cgi?id=14186&action=edit
Add IEEE support for float 128bit, version 3

Yes, the previous patch had { issues.  I split the patch into a functional
change patch and a debug print patch.  Unfortunately, I didn't get it done
cleanly as I found out later when I compiled just the functional patch.

The latest version merges the IEEE Float 128-bit and vector if clauses where
possible.  It updates ppc64_elfv2_abi_homogeneous_aggregate to support the IEEE
128-bit floating point.  That change fixes the rest of the issues with the
gdb.base/infcall-nested-structs-c.exp test.  The patch also fixes all of the
regression failures for gdb.base/infcall-nested-structs-c++.exp.

The current patch fixes 8 of the 9 failures in gdb.base/structs.exp.  The test
description for the one failing test is:  "Implemented by calling the one
parameter function "Fun$N" which stores its parameter in the global variable
"L$N".  GDB then examining that global to confirm that the value is as
expected."  

The test defines the global structures:
struct  struct1 {tA a;};
struct  struct2 {tA a; tB b;};
struct  struct3 {tA a; tB b; tC c; };
...
and
...
struct  struct1  foo1 = {'1'}, L1;
struct  struct2  foo2 = {'a','2'}, L2;
struct  struct3  foo3 = {'1','b','3'}, L3;
...

void Fun1(struct struct1 foo1)
{
  L1 = foo1;
}


The gdb test prints the value of L1 as follows:

p/c L1
$2 = {a = 0 '\000'}

(gdb) FAIL: gdb.base/structs.exp: types=tld: p/c L<n>; call 1 structs-tld

The tld indicates that the test is for the long double (IEEE Float 128-bit)
case.

Note, the test

p/c L2
$3 = {a = 97 'a', b = 50 '2'} 
(gdb) PASS: gdb.base/structs.exp: types=tld: p/c fun<n>(); call 2 structs-tld

passes.  The print for the global values do not appear to use any of the
functions in gdb/ppc-sysv-tdep.c.  I have yet to find how gdb handles the
global variable case.  I haven't seen anything yet in the ABI about it either. 
Any hints on where the issue is for the global case would be appreciated.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [Bug tdep/29247] [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed
  2022-06-14  8:58 [Bug tdep/29247] New: [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed vries at gcc dot gnu.org
                   ` (19 preceding siblings ...)
  2022-06-30 22:47 ` cel at us dot ibm.com
@ 2022-07-12  9:15 ` ulrich.weigand at de dot ibm.com
  2022-07-13 17:46 ` cel at us dot ibm.com
                   ` (8 subsequent siblings)
  29 siblings, 0 replies; 31+ messages in thread
From: ulrich.weigand at de dot ibm.com @ 2022-07-12  9:15 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=29247

--- Comment #19 from ulrich.weigand at de dot ibm.com ---
For the final failing case, I think the problem is that for a struct with a
single element, the ppc64_sysv_abi_push_param code may accidentally run into
this code path:

      /* The ABI (version 1.9) specifies that structs containing a
         single floating-point value, at any level of nesting of
         single-member structs, are passed in floating-point registers.  */
      if (type->code () == TYPE_CODE_STRUCT
          && type->num_fields () == 1)
        {
          while (type->code () == TYPE_CODE_STRUCT
                 && type->num_fields () == 1)
            type = check_typedef (type->field (0).type ());

          if (type->code () == TYPE_CODE_FLT)
            ppc64_sysv_abi_push_freg (gdbarch, type, val, argpos);
        }


Now there's two problems with this: first of all, this code path should really
only be used in ELFv1 - for ELFv2, this should be handled via the homogeneous
aggregate rule instead.  And secondly, when the path *is* executed (e.g. on
big-endian targets), it also should handle IEEE long-double correctly.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [Bug tdep/29247] [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed
  2022-06-14  8:58 [Bug tdep/29247] New: [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed vries at gcc dot gnu.org
                   ` (20 preceding siblings ...)
  2022-07-12  9:15 ` ulrich.weigand at de dot ibm.com
@ 2022-07-13 17:46 ` cel at us dot ibm.com
  2022-07-15 15:32 ` cel at us dot ibm.com
                   ` (7 subsequent siblings)
  29 siblings, 0 replies; 31+ messages in thread
From: cel at us dot ibm.com @ 2022-07-13 17:46 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=29247

--- Comment #20 from Carl E Love <cel at us dot ibm.com> ---
Created attachment 14207
  --> https://sourceware.org/bugzilla/attachment.cgi?id=14207&action=edit
Patch to fix the final error

Yes,the control flow is executing the ABI (version 1.9) code as noted by Ulrich
for ELFv1 when the system is actually using ELFv2,

First, added support for IEEE 128-bit float to the code pointed out in comment
19.  This fixes the final error even though we are actually not supposed to be
executing this code for ELFv2.  

Second, added a check for ELFv1 so the code is only executed with ELFv1.  The
test still passes given the previous fixes to the homogeneous aggregate rule.

The attachment shows the new code to fix the final bug.  Posting it separately
to make it easy to review.

I will merge the two patches and post the patch on the mailing list for review
and approval.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [Bug tdep/29247] [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed
  2022-06-14  8:58 [Bug tdep/29247] New: [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed vries at gcc dot gnu.org
                   ` (21 preceding siblings ...)
  2022-07-13 17:46 ` cel at us dot ibm.com
@ 2022-07-15 15:32 ` cel at us dot ibm.com
  2022-07-15 16:09 ` cel at us dot ibm.com
                   ` (6 subsequent siblings)
  29 siblings, 0 replies; 31+ messages in thread
From: cel at us dot ibm.com @ 2022-07-15 15:32 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=29247

--- Comment #21 from Carl E Love <cel at us dot ibm.com> ---
Patch approved, committed.

commit ebbac1687d0075c8666b25438fc4f35d3dd1daaa (HEAD -> master, origin/master,
origin/HEAD)
Author: Carl Love <cel@us.ibm.com>
Date:   Fri Jul 15 15:30:43 2022 +0000

    PowerPC: Add support for IEEE 128-bit format.

    The test gdb.base/infcall-nested-structs-c.exp fails on a gdb assert
    in function ppc64_sysv_abi_return_value in file gdb/ppc-sysv-tdep.c.  The
    assert is due to the missing IEEE 128-bit support in file
    gdb/ppc-sysv-tdep.c.

    The IBM long double was the initial float 128-bit support added by IBM
    The IEEE 128-bit support, which is similar IBM long double support, was
    made the default starting with GCC 12.  The floating point format
    differences include the number of bits used to encode the exponent
    and significand.  Also, IBM long double values are passed in a pair of
    floating point registers.  The  IEEE 128-bit value is passed in a single
    vector register.

    This patch fixes the gdb_assert (ok); in function
    ppc64_sysv_abi_return_value in gdb/ppc-sysv-tdep.c by adding IEEE FLOAT
    128-bit type support for PowerPC.

    The patch has been tested on Power 10, ELFv2.  It fixes the following list
    of regression failures on Power 10:

    gdb.base/infcall-nested-structs-c.exp      192
    gdb.base/infcall-nested-structs-c++.exp     76
    gdb.base/structs.exp                         9

    The patch has been tested on Power 8 BE which is ELFv1.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [Bug tdep/29247] [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed
  2022-06-14  8:58 [Bug tdep/29247] New: [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed vries at gcc dot gnu.org
                   ` (22 preceding siblings ...)
  2022-07-15 15:32 ` cel at us dot ibm.com
@ 2022-07-15 16:09 ` cel at us dot ibm.com
  2022-07-27  8:45 ` vries at gcc dot gnu.org
                   ` (5 subsequent siblings)
  29 siblings, 0 replies; 31+ messages in thread
From: cel at us dot ibm.com @ 2022-07-15 16:09 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=29247

--- Comment #22 from Carl E Love <cel at us dot ibm.com> ---
I don't seem to have permission to change the status.  

I will leave it to Tom to verify the upstream fix and update the bugzilla and
status.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [Bug tdep/29247] [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed
  2022-06-14  8:58 [Bug tdep/29247] New: [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed vries at gcc dot gnu.org
                   ` (23 preceding siblings ...)
  2022-07-15 16:09 ` cel at us dot ibm.com
@ 2022-07-27  8:45 ` vries at gcc dot gnu.org
  2022-07-27 15:38 ` cel at us dot ibm.com
                   ` (4 subsequent siblings)
  29 siblings, 0 replies; 31+ messages in thread
From: vries at gcc dot gnu.org @ 2022-07-27  8:45 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=29247

--- Comment #23 from Tom de Vries <vries at gcc dot gnu.org> ---
(In reply to Carl E Love from comment #22)
> I don't seem to have permission to change the status.  
> 
> I will leave it to Tom to verify the upstream fix and update the bugzilla
> and status.

I've backported the patch to gdb 12.1 and verified that the assert doesn't
trigger anymore.

I've also looked at all the test-cases containing the assert:
- gdb.base/callfuncs.exp
- gdb.base/infcall-nested-structs-c++.exp
- gdb.base/infcall-nested-structs-c.exp
- gdb.base/structs.exp
- gdb.base/varargs.exp

All of them pass without fails, except for varargs.exp, which has:
...
(gdb) print find_max_long_double_real(4, ldc1, ldc2, ldc3, ldc4)^M
$8 = 0 + 0i^M
(gdb) FAIL: gdb.base/varargs.exp: print find_max_long_double_real(4, ldc1,
ldc2, ldc3, ldc4)
...
while this is expected:
...
$8 = 4 + 4i^M
...

Unfortunately, I don't have access to a machine atm to investigate this.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [Bug tdep/29247] [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed
  2022-06-14  8:58 [Bug tdep/29247] New: [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed vries at gcc dot gnu.org
                   ` (24 preceding siblings ...)
  2022-07-27  8:45 ` vries at gcc dot gnu.org
@ 2022-07-27 15:38 ` cel at us dot ibm.com
  2022-07-27 15:42 ` vries at gcc dot gnu.org
                   ` (3 subsequent siblings)
  29 siblings, 0 replies; 31+ messages in thread
From: cel at us dot ibm.com @ 2022-07-27 15:38 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=29247

--- Comment #24 from Carl E Love <cel at us dot ibm.com> ---
I checked gdb mainline using a Power 10 system with Red Hat Enterprise Linux
release 9.0 (Plow) and the test gdb.base/varargs.exp passes.

I downloaded the source tar file for gdb 12.1 and applied the patch.  The patch
applies without any issues however I get a compile failure:

error: ‘floatformats_ieee_quad’ was not declared in this scope; did you mean
‘floatformats_ia64_quad’?

I am assuming your backport of my patch fixes that issue.  If you can attach
the backport of the IEEE 128 support patch that you used, I will see if I can
reproduce the issue on my system.  I am not sure it is worth me trying to do
the backport as well since I can't guarantee the backports will match.

Thanks for checking out the patch.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [Bug tdep/29247] [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed
  2022-06-14  8:58 [Bug tdep/29247] New: [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed vries at gcc dot gnu.org
                   ` (25 preceding siblings ...)
  2022-07-27 15:38 ` cel at us dot ibm.com
@ 2022-07-27 15:42 ` vries at gcc dot gnu.org
  2022-07-27 16:54 ` cel at us dot ibm.com
                   ` (2 subsequent siblings)
  29 siblings, 0 replies; 31+ messages in thread
From: vries at gcc dot gnu.org @ 2022-07-27 15:42 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=29247

--- Comment #25 from Tom de Vries <vries at gcc dot gnu.org> ---
Created attachment 14234
  --> https://sourceware.org/bugzilla/attachment.cgi?id=14234&action=edit
patch backported to gdb 12.1

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [Bug tdep/29247] [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed
  2022-06-14  8:58 [Bug tdep/29247] New: [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed vries at gcc dot gnu.org
                   ` (26 preceding siblings ...)
  2022-07-27 15:42 ` vries at gcc dot gnu.org
@ 2022-07-27 16:54 ` cel at us dot ibm.com
  2022-09-02 12:55 ` vries at gcc dot gnu.org
  2022-09-02 13:09 ` vries at gcc dot gnu.org
  29 siblings, 0 replies; 31+ messages in thread
From: cel at us dot ibm.com @ 2022-07-27 16:54 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=29247

--- Comment #26 from Carl E Love <cel at us dot ibm.com> ---
Looks like the change to the patch was to replace floatformats_ieee_quad with 
floatformats_ia64_quad.  I didn't see any other changes.

The patch applied and compiled without any issues.  I ran the test

 make check RUNTESTFLAGS='GDB=/home/carll/bin/gdb  gdb.base/varargs.exp ' > out

and checked the results in gdb/testsuite/gdb.log

...
gdb) PASS: gdb.base/varargs.exp: print find_max_double_real(4, dc1, dc2, dc3, \
dc4)
print find_max_long_double_real(4, ldc1, ldc2, ldc3, ldc4)^M
$8 = 4 + 4i^M
(gdb) PASS: gdb.base/varargs.exp: print find_max_long_double_real(4, ldc1,
ldc2\
, ldc3, ldc4)
testcase
/home/carll/GDB/build-gdb-12.1/gdb/testsuite/../../../gdb-12.1/gdb/tes\
tsuite/gdb.base/varargs.exp completed in 0 seconds

                === gdb Summary ===

# of expected passes            11
...

It seemed to work fine.

Again, I am using a Power 10 system with Enterprise Linux release 9.0 (Plow).  

I used the gdb 12.1 source tar file gdb-12.1.tar.gz from
https://ftp.gnu.org/gnu/gdb/.  I created a git repository with that source
before applying the back ported patch.


I tried testing with the same source tar file and backported patch on a Power 9
system running  Ubuntu 22.04 LTS.  The  gdb.base/varargs.exp test again runs
with all tests passing.  

Do you have any details on the system where you saw the error?  I can see if I
can find a machine that matches the specs of the machine that you used to see
if I can reproduce the failure.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [Bug tdep/29247] [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed
  2022-06-14  8:58 [Bug tdep/29247] New: [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed vries at gcc dot gnu.org
                   ` (27 preceding siblings ...)
  2022-07-27 16:54 ` cel at us dot ibm.com
@ 2022-09-02 12:55 ` vries at gcc dot gnu.org
  2022-09-02 13:09 ` vries at gcc dot gnu.org
  29 siblings, 0 replies; 31+ messages in thread
From: vries at gcc dot gnu.org @ 2022-09-02 12:55 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=29247

--- Comment #27 from Tom de Vries <vries at gcc dot gnu.org> ---
(In reply to Tom de Vries from comment #23)
> Unfortunately, I don't have access to a machine atm to investigate this.

I was able to get my hands on a machine, and reproduced it.

I minimized it to:
...
$ cat gdb/testsuite/gdb.base/varargs.c
#include <stdarg.h>
#include <stdlib.h>

long double _Complex orig = 4.0L + 4.0Li;
long double _Complex copy = 0L + 0Li;

int
test (void)
{
  return 0;
}

void
do_copy (int num_vals, ...)
{
#if 1
  va_list argp;
  va_start (argp, num_vals);
  copy = va_arg (argp, long double _Complex);
#else
  copy = orig;
#endif
}

void
_start (void)
{
  test ();

  while (1)
    ;
}
...
and:
...
$ cat gdb/testsuite/gdb.base/varargs.exp
standard_testfile .c

set additional_flags {debug}
lappend additional_flags "additional_flags=-nostdlib"

# build the first test case
if  { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" \
           executable ${additional_flags}] != "" } {
     untested "failed to compile"
     return -1
}

# Start with a fresh gdb.

clean_restart ${binfile}

gdb_test_no_output "set print sevenbit-strings"
gdb_test_no_output "set print address off"
gdb_test_no_output "set width 0"

runto test

gdb_test "print orig" ".*= 4 \\+ 4i"
gdb_test "print copy" ".*= 0 \\+ 0i"

gdb_test "print do_copy (1, orig)"

with_test_prefix "after copy" {
    gdb_test "print orig" ".*= 4 \\+ 4i"
    gdb_test "print copy" ".*= 4 \\+ 4i"
}
...

This doesn't seem to be related to the return value passing bit, so I propose
to close this PR and file a new one (assuming this is an unknown issue).

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 31+ messages in thread

* [Bug tdep/29247] [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed
  2022-06-14  8:58 [Bug tdep/29247] New: [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed vries at gcc dot gnu.org
                   ` (28 preceding siblings ...)
  2022-09-02 12:55 ` vries at gcc dot gnu.org
@ 2022-09-02 13:09 ` vries at gcc dot gnu.org
  29 siblings, 0 replies; 31+ messages in thread
From: vries at gcc dot gnu.org @ 2022-09-02 13:09 UTC (permalink / raw)
  To: gdb-prs

https://sourceware.org/bugzilla/show_bug.cgi?id=29247

Tom de Vries <vries at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |13.1
         Resolution|---                         |FIXED
             Status|NEW                         |RESOLVED

--- Comment #28 from Tom de Vries <vries at gcc dot gnu.org> ---
(In reply to Tom de Vries from comment #27)
> This doesn't seem to be related to the return value passing bit, so I
> propose to close this PR and file a new one (assuming this is an unknown
> issue).

Filed PR29543 - "[gdb/tdep] inferior call with complex long double vararg not
handled correctly".

Marking resolved-fixed.

-- 
You are receiving this mail because:
You are on the CC list for the bug.

^ permalink raw reply	[flat|nested] 31+ messages in thread

end of thread, other threads:[~2022-09-02 13:09 UTC | newest]

Thread overview: 31+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-06-14  8:58 [Bug tdep/29247] New: [gdb, tdep] ../../gdb/ppc-sysv-tdep.c:1945: internal-error: ppc64_sysv_abi_return_value: Assertion `ok' failed vries at gcc dot gnu.org
2022-06-14 14:51 ` [Bug tdep/29247] " vries at gcc dot gnu.org
2022-06-15 11:59 ` vries at gcc dot gnu.org
2022-06-15 13:27 ` vries at gcc dot gnu.org
2022-06-15 14:47 ` vries at gcc dot gnu.org
2022-06-15 14:51 ` vries at gcc dot gnu.org
2022-06-15 15:49 ` vries at gcc dot gnu.org
2022-06-15 15:59 ` vries at gcc dot gnu.org
2022-06-15 22:47 ` vries at gcc dot gnu.org
2022-06-16 13:53 ` jamborm at gcc dot gnu.org
2022-06-20 12:25 ` ulrich.weigand at de dot ibm.com
2022-06-21 16:32 ` cel at us dot ibm.com
2022-06-23 15:19 ` cel at us dot ibm.com
2022-06-23 15:22 ` cel at us dot ibm.com
2022-06-23 15:30 ` ulrich.weigand at de dot ibm.com
2022-06-23 19:56 ` cel at us dot ibm.com
2022-06-24  0:53 ` cel at us dot ibm.com
2022-06-24 11:53 ` ulrich.weigand at de dot ibm.com
2022-06-25  0:42 ` cel at us dot ibm.com
2022-06-25  2:51 ` ulrich.weigand at de dot ibm.com
2022-06-30 22:47 ` cel at us dot ibm.com
2022-07-12  9:15 ` ulrich.weigand at de dot ibm.com
2022-07-13 17:46 ` cel at us dot ibm.com
2022-07-15 15:32 ` cel at us dot ibm.com
2022-07-15 16:09 ` cel at us dot ibm.com
2022-07-27  8:45 ` vries at gcc dot gnu.org
2022-07-27 15:38 ` cel at us dot ibm.com
2022-07-27 15:42 ` vries at gcc dot gnu.org
2022-07-27 16:54 ` cel at us dot ibm.com
2022-09-02 12:55 ` vries at gcc dot gnu.org
2022-09-02 13:09 ` 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).