Sun Jun 26 05:55:30 2022 UTC ()
PR port-powerpc/56899

Disable 128-bit long double for NetBSD/powerpc.


(rin)
diff -r1.8 -r1.9 src/external/gpl3/gdb/dist/gdb/ppc-nbsd-tdep.c

cvs diff -r1.8 -r1.9 src/external/gpl3/gdb/dist/gdb/ppc-nbsd-tdep.c (expand / switch to unified diff)

--- src/external/gpl3/gdb/dist/gdb/ppc-nbsd-tdep.c 2022/06/26 05:52:43 1.8
+++ src/external/gpl3/gdb/dist/gdb/ppc-nbsd-tdep.c 2022/06/26 05:55:30 1.9
@@ -167,26 +167,30 @@ const struct tramp_frame ppcnbsd2_sigtra @@ -167,26 +167,30 @@ const struct tramp_frame ppcnbsd2_sigtra
167 { 0x44000002, ULONGEST_MAX }, /* sc */ 167 { 0x44000002, ULONGEST_MAX }, /* sc */
168 { TRAMP_SENTINEL_INSN, ULONGEST_MAX } 168 { TRAMP_SENTINEL_INSN, ULONGEST_MAX }
169 }, 169 },
170 ppcnbsd_sigtramp_cache_init 170 ppcnbsd_sigtramp_cache_init
171}; 171};
172  172
173 173
174static void 174static void
175ppcnbsd_init_abi (struct gdbarch_info info, 175ppcnbsd_init_abi (struct gdbarch_info info,
176 struct gdbarch *gdbarch) 176 struct gdbarch *gdbarch)
177{ 177{
178 nbsd_init_abi (info, gdbarch); 178 nbsd_init_abi (info, gdbarch);
179 179
 180 /* NetBSD doesn't support the 128-bit `long double' from the psABI. */
 181 set_gdbarch_long_double_bit (gdbarch, 64);
 182 set_gdbarch_long_double_format (gdbarch, floatformats_ieee_double);
 183
180 /* For NetBSD, this is an on again, off again thing. Some systems 184 /* For NetBSD, this is an on again, off again thing. Some systems
181 do use the broken struct convention, and some don't. */ 185 do use the broken struct convention, and some don't. */
182 set_gdbarch_return_value (gdbarch, ppcnbsd_return_value); 186 set_gdbarch_return_value (gdbarch, ppcnbsd_return_value);
183 187
184 /* NetBSD uses SVR4-style shared libraries. */ 188 /* NetBSD uses SVR4-style shared libraries. */
185 set_solib_svr4_fetch_link_map_offsets 189 set_solib_svr4_fetch_link_map_offsets
186 (gdbarch, svr4_ilp32_fetch_link_map_offsets); 190 (gdbarch, svr4_ilp32_fetch_link_map_offsets);
187 191
188 set_gdbarch_iterate_over_regset_sections 192 set_gdbarch_iterate_over_regset_sections
189 (gdbarch, ppcnbsd_iterate_over_regset_sections); 193 (gdbarch, ppcnbsd_iterate_over_regset_sections);
190 194
191 tramp_frame_prepend_unwinder (gdbarch, &ppcnbsd_sigtramp); 195 tramp_frame_prepend_unwinder (gdbarch, &ppcnbsd_sigtramp);
192 tramp_frame_prepend_unwinder (gdbarch, &ppcnbsd2_sigtramp); 196 tramp_frame_prepend_unwinder (gdbarch, &ppcnbsd2_sigtramp);