https://bugs.kde.org/show_bug.cgi?id=433437

            Bug ID: 433437
           Summary: FreeBSD support, part 1
           Product: valgrind
           Version: unspecified
          Platform: Other
                OS: FreeBSD
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: vex
          Assignee: jsew...@acm.org
          Reporter: pjfl...@wanadoo.fr
  Target Milestone: ---

Created attachment 136050
  --> https://bugs.kde.org/attachment.cgi?id=136050&action=edit
diff in vex directory

Primarily these changes concern the nature of alignment generated signals. On
Linux, these produce SIGSEGV and n FreeBSD they produce SIGBUS.

It would be cleaner in my opinion to rename the functions to be

gen_SIGNAL_if_not_XX_aligned
gen_SIGNAL_if_not_16_aligned
etc.

and just have the different code as follows

static
void gen_SIGNAL_if_not_XX_aligned ( IRTemp effective_addr, ULong mask )
{
   stmt(
      IRStmt_Exit(
         binop(Iop_CmpNE64,
               binop(Iop_And64,mkexpr(effective_addr),mkU64(mask)),
               mkU64(0)),
#if !defined(VGO_FREEBSD)
         Ijk_SigSEGV,
#else
         Ijk_SigBUS,
#endif
         IRConst_U64(guest_RIP_curr_instr),
         OFFB_RIP
      )
   );
}

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to