mirror of
https://github.com/RPCS3/llvm.git
synced 2024-12-12 22:28:22 +00:00
Unify all constant evaluations that depend on register size
in TargetInstrInfo::ConvertConstantToIntType. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7398 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
b3b0414c87
commit
588668d468
@ -14,6 +14,7 @@
|
||||
class MachineInstr;
|
||||
class TargetMachine;
|
||||
class Value;
|
||||
class Type;
|
||||
class Instruction;
|
||||
class Constant;
|
||||
class Function;
|
||||
@ -300,6 +301,21 @@ public:
|
||||
//
|
||||
virtual MachineOpCode getNOPOpCode() const { abort(); }
|
||||
|
||||
// Get the value of an integral constant in the form that must
|
||||
// be put into the machine register. The specified constant is interpreted
|
||||
// as (i.e., converted if necessary to) the specified destination type. The
|
||||
// result is always returned as an uint64_t, since the representation of
|
||||
// int64_t and uint64_t are identical. The argument can be any known const.
|
||||
//
|
||||
// isValidConstant is set to true if a valid constant was found.
|
||||
//
|
||||
virtual uint64_t ConvertConstantToIntType(const TargetMachine &target,
|
||||
const Value *V,
|
||||
const Type *destType,
|
||||
bool &isValidConstant) const {
|
||||
abort();
|
||||
}
|
||||
|
||||
// Create an instruction sequence to put the constant `val' into
|
||||
// the virtual register `dest'. `val' may be a Constant or a
|
||||
// GlobalValue, viz., the constant address of a global variable or function.
|
||||
|
Loading…
Reference in New Issue
Block a user