From: Paul Floyd Date: Sat, 23 Nov 2024 07:13:05 +0000 (+0100) Subject: FreeBSD: fix a few warnings when building with GCC X-Git-Tag: VALGRIND_3_25_0~228 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=74ae5afa8650a1af7251d0c50757d1335a4ce0b9;p=thirdparty%2Fvalgrind.git FreeBSD: fix a few warnings when building with GCC --- diff --git a/coregrind/m_sigframe/sigframe-amd64-freebsd.c b/coregrind/m_sigframe/sigframe-amd64-freebsd.c index f7ee95d3f..1377c2bae 100644 --- a/coregrind/m_sigframe/sigframe-amd64-freebsd.c +++ b/coregrind/m_sigframe/sigframe-amd64-freebsd.c @@ -258,7 +258,7 @@ static Addr build_sigframe(ThreadState *tst, VG_TRACK( pre_mem_write, Vg_CoreSignal, tst->tid, "signal handler frame", rsp, offsetof(struct sigframe, vg) ); - frame->retaddr = (Addr)&VG_(amd64_freebsd_SUBST_FOR_sigreturn); + frame->retaddr = (Addr)VG_(amd64_freebsd_SUBST_FOR_sigreturn); if (siguc) { trapno = siguc->uc_mcontext.trapno; diff --git a/coregrind/m_sigframe/sigframe-x86-freebsd.c b/coregrind/m_sigframe/sigframe-x86-freebsd.c index eaa4df264..f631ad6f9 100644 --- a/coregrind/m_sigframe/sigframe-x86-freebsd.c +++ b/coregrind/m_sigframe/sigframe-x86-freebsd.c @@ -289,7 +289,7 @@ static Addr build_sigframe(ThreadState *tst, esp, offsetof(struct sigframe, vg) ); frame->sigNo = sigNo; - frame->retaddr = (Addr)&VG_(x86_freebsd_SUBST_FOR_sigreturn); + frame->retaddr = (Addr)VG_(x86_freebsd_SUBST_FOR_sigreturn); if ((flags & VKI_SA_SIGINFO) == 0) frame->psigInfo = (Addr)siginfo->si_code; else diff --git a/coregrind/m_syswrap/syswrap-x86-freebsd.c b/coregrind/m_syswrap/syswrap-x86-freebsd.c index 102a7a077..0ad3dda26 100644 --- a/coregrind/m_syswrap/syswrap-x86-freebsd.c +++ b/coregrind/m_syswrap/syswrap-x86-freebsd.c @@ -402,12 +402,12 @@ static void deallocate_LGDTs_for_thread ( VexGuestX86State* vex ) } if (vex->guest_LDT != (HWord)NULL) { - free_LDT_or_GDT( (VexGuestX86SegDescr*)vex->guest_LDT ); + free_LDT_or_GDT( (VexGuestX86SegDescr*)(HWord)vex->guest_LDT ); vex->guest_LDT = (HWord)NULL; } if (vex->guest_GDT != (HWord)NULL) { - free_LDT_or_GDT( (VexGuestX86SegDescr*)vex->guest_GDT ); + free_LDT_or_GDT( (VexGuestX86SegDescr*)(HWord)vex->guest_GDT ); vex->guest_GDT = (HWord)NULL; } } @@ -420,7 +420,7 @@ static SysRes sys_set_thread_area ( ThreadId tid, Int *idxptr, void *base) vg_assert(8 == sizeof(VexGuestX86SegDescr)); vg_assert(sizeof(HWord) == sizeof(VexGuestX86SegDescr*)); - gdt = (VexGuestX86SegDescr*)VG_(threads)[tid].arch.vex.guest_GDT; + gdt = (VexGuestX86SegDescr*)(HWord)VG_(threads)[tid].arch.vex.guest_GDT; /* If the thread doesn't have a GDT, allocate it now. */ if (!gdt) { @@ -463,7 +463,7 @@ static SysRes sys_get_thread_area ( ThreadId tid, Int idx, void ** basep ) vg_assert(sizeof(HWord) == sizeof(VexGuestX86SegDescr*)); vg_assert(8 == sizeof(VexGuestX86SegDescr)); - gdt = (VexGuestX86SegDescr*)VG_(threads)[tid].arch.vex.guest_GDT; + gdt = (VexGuestX86SegDescr*)(HWord)VG_(threads)[tid].arch.vex.guest_GDT; /* If the thread doesn't have a GDT, allocate it now. */ if (!gdt) { diff --git a/coregrind/pub_core_trampoline.h b/coregrind/pub_core_trampoline.h index d0bd6b859..f92b6ab45 100644 --- a/coregrind/pub_core_trampoline.h +++ b/coregrind/pub_core_trampoline.h @@ -57,11 +57,11 @@ extern Addr VG_(trampoline_stuff_start); extern Addr VG_(trampoline_stuff_end); #if defined(VGP_x86_freebsd) -extern void VG_(x86_freebsd_SUBST_FOR_sigreturn); +extern void VG_(x86_freebsd_SUBST_FOR_sigreturn)(void); #endif #if defined(VGP_amd64_freebsd) -extern void VG_(amd64_freebsd_SUBST_FOR_sigreturn); +extern void VG_(amd64_freebsd_SUBST_FOR_sigreturn)(void); #endif #if defined(VGP_arm64_freebsd)