Esempio n. 1
0
        bool holds()
        {
            Type a = this->template getInputValue<operand_a>();
            Type b = this->template getInputValue<operand_b>();
            typename Type::atomized_type a_atomic;
            typename Type::atomized_type b_atomic;
            Interval::atomize(a_atomic, a);
            Interval::atomize(b_atomic, b);

            bool lhs = is_contained_in(a, b);
            bool rhs = a_atomic.contained_in(b_atomic);

            this->template setOutputValue<lhs_result>(lhs);
            this->template setOutputValue<rhs_result>(rhs);

            return lhs == rhs;
        }
ExtendedPC ExtendedPC::adjust(address begin, address end, address new_begin) {
  assert(is_contained_in(begin, end), "must be contained");

  address new_pc = new_begin + (_pc - begin);      
  return ExtendedPC(new_pc);
}