def _op_fp_to_int(self, args): rm = self._translate_rm(args[0]) arg = args[1].raw_to_fp() if self._to_signed == 'S': return claripy.fpToSBV(rm, arg, self._to_size) else: return claripy.fpToUBV(rm, arg, self._to_size)
def _op_fp_to_int(self, args): rm = self._translate_rm(args[0]) arg = args[1].raw_to_fp() if self._to_signed == 'S': return claripy.fpToSBV(rm, arg, self._to_size) else: return claripy.fpToUBV(rm, arg, self._to_size)
def _compute_fp_to_int(self, rm, arg, to_size): if self._to_signed == 'S': return claripy.fpToSBV(rm, arg, to_size) else: return claripy.fpToUBV(rm, arg, to_size)
def test_fp_ops(): a = claripy.FPV(1.5, claripy.FSORT_DOUBLE) b = claripy.fpToUBV(claripy.fp.RM_NearestTiesEven, a, 32) s = claripy.Solver() assert s.eval(b, 1)[0] == 2