mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-07-02 04:24:22 +00:00
Implement creation of ICmp and FCmp constant expressions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32147 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -547,7 +547,6 @@ public:
|
||||
/// @brief Return true if this is a convert constant expression
|
||||
bool isCast() const;
|
||||
|
||||
|
||||
/// Select constant expr
|
||||
///
|
||||
static Constant *getSelect(Constant *C, Constant *V1, Constant *V2) {
|
||||
@ -591,6 +590,8 @@ public:
|
||||
static Constant *getSetGT(Constant *C1, Constant *C2);
|
||||
static Constant *getSetLE(Constant *C1, Constant *C2);
|
||||
static Constant *getSetGE(Constant *C1, Constant *C2);
|
||||
static Constant* getICmp(unsigned short pred, Constant* LHS, Constant* RHS);
|
||||
static Constant* getFCmp(unsigned short pred, Constant* LHS, Constant* RHS);
|
||||
static Constant *getShl(Constant *C1, Constant *C2);
|
||||
static Constant *getLShr(Constant *C1, Constant *C2);
|
||||
static Constant *getAShr(Constant *C1, Constant *C2);
|
||||
@ -606,7 +607,7 @@ public:
|
||||
static Constant *getExtractElement(Constant *Vec, Constant *Idx);
|
||||
static Constant *getInsertElement(Constant *Vec, Constant *Elt,Constant *Idx);
|
||||
static Constant *getShuffleVector(Constant *V1, Constant *V2, Constant *Mask);
|
||||
|
||||
|
||||
/// isNullValue - Return true if this is the value that would be returned by
|
||||
/// getNullValue.
|
||||
virtual bool isNullValue() const { return false; }
|
||||
@ -614,6 +615,10 @@ public:
|
||||
/// getOpcode - Return the opcode at the root of this constant expression
|
||||
unsigned getOpcode() const { return SubclassData; }
|
||||
|
||||
/// getPredicate - Return the ICMP or FCMP predicate value. Assert if this is
|
||||
/// not an ICMP or FCMP constant expression.
|
||||
unsigned getPredicate() const;
|
||||
|
||||
/// getOpcodeName - Return a string representation for an opcode.
|
||||
const char *getOpcodeName() const;
|
||||
|
||||
|
Reference in New Issue
Block a user