]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
FreeBSD: fix a few warnings when building with GCC
authorPaul Floyd <pjfloyd@wanadoo.fr>
Sat, 23 Nov 2024 07:13:05 +0000 (08:13 +0100)
committerPaul Floyd <pjfloyd@wanadoo.fr>
Sat, 23 Nov 2024 07:13:05 +0000 (08:13 +0100)
coregrind/m_sigframe/sigframe-amd64-freebsd.c
coregrind/m_sigframe/sigframe-x86-freebsd.c
coregrind/m_syswrap/syswrap-x86-freebsd.c
coregrind/pub_core_trampoline.h

index f7ee95d3fc54a5de193cb9bd61542ba39c98c432..1377c2baebe07b588057300bafaf31d7253f4713 100644 (file)
@@ -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;
index eaa4df264a2181f7da5f1a16176a01fc8c79e3ca..f631ad6f957fbb5434010fe2eface347f1b112d4 100644 (file)
@@ -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
index 102a7a077957179a1f8398bc16d02243198bf731..0ad3dda26443d2a272f497a96d523bf5c6456bc3 100644 (file)
@@ -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) {
index d0bd6b859742263e1da59e24e855e5b2ad19dc9e..f92b6ab450b2802433ba5a8dd2e11aace23fed3e 100644 (file)
@@ -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)