mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-07-23 16:30:00 +00:00
Remove isTwoAddress from llvm.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106470 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
61abd7b395
commit
1f4a1493fb
@ -144,7 +144,6 @@ file prints this (at the time of this writing):</p>
|
|||||||
<b>bit</b> mayLoad = 0;
|
<b>bit</b> mayLoad = 0;
|
||||||
<b>bit</b> mayStore = 0;
|
<b>bit</b> mayStore = 0;
|
||||||
<b>bit</b> isImplicitDef = 0;
|
<b>bit</b> isImplicitDef = 0;
|
||||||
<b>bit</b> isTwoAddress = 1;
|
|
||||||
<b>bit</b> isConvertibleToThreeAddress = 1;
|
<b>bit</b> isConvertibleToThreeAddress = 1;
|
||||||
<b>bit</b> isCommutable = 1;
|
<b>bit</b> isCommutable = 1;
|
||||||
<b>bit</b> isTerminator = 0;
|
<b>bit</b> isTerminator = 0;
|
||||||
|
@ -203,7 +203,6 @@ class Instruction {
|
|||||||
bit canFoldAsLoad = 0; // Can this be folded as a simple memory operand?
|
bit canFoldAsLoad = 0; // Can this be folded as a simple memory operand?
|
||||||
bit mayLoad = 0; // Is it possible for this inst to read memory?
|
bit mayLoad = 0; // Is it possible for this inst to read memory?
|
||||||
bit mayStore = 0; // Is it possible for this inst to write memory?
|
bit mayStore = 0; // Is it possible for this inst to write memory?
|
||||||
bit isTwoAddress = 0; // Is this a two address instruction?
|
|
||||||
bit isConvertibleToThreeAddress = 0; // Can this 2-addr instruction promote?
|
bit isConvertibleToThreeAddress = 0; // Can this 2-addr instruction promote?
|
||||||
bit isCommutable = 0; // Is this 3 operand instruction commutable?
|
bit isCommutable = 0; // Is this 3 operand instruction commutable?
|
||||||
bit isTerminator = 0; // Is this part of the terminator for a basic block?
|
bit isTerminator = 0; // Is this part of the terminator for a basic block?
|
||||||
|
@ -107,7 +107,6 @@ CodeGenInstruction::CodeGenInstruction(Record *R, const std::string &AsmStr)
|
|||||||
canFoldAsLoad = R->getValueAsBit("canFoldAsLoad");
|
canFoldAsLoad = R->getValueAsBit("canFoldAsLoad");
|
||||||
mayLoad = R->getValueAsBit("mayLoad");
|
mayLoad = R->getValueAsBit("mayLoad");
|
||||||
mayStore = R->getValueAsBit("mayStore");
|
mayStore = R->getValueAsBit("mayStore");
|
||||||
bool isTwoAddress = R->getValueAsBit("isTwoAddress");
|
|
||||||
isPredicable = R->getValueAsBit("isPredicable");
|
isPredicable = R->getValueAsBit("isPredicable");
|
||||||
isConvertibleToThreeAddress = R->getValueAsBit("isConvertibleToThreeAddress");
|
isConvertibleToThreeAddress = R->getValueAsBit("isConvertibleToThreeAddress");
|
||||||
isCommutable = R->getValueAsBit("isCommutable");
|
isCommutable = R->getValueAsBit("isCommutable");
|
||||||
@ -212,16 +211,6 @@ CodeGenInstruction::CodeGenInstruction(Record *R, const std::string &AsmStr)
|
|||||||
// Parse Constraints.
|
// Parse Constraints.
|
||||||
ParseConstraints(R->getValueAsString("Constraints"), this);
|
ParseConstraints(R->getValueAsString("Constraints"), this);
|
||||||
|
|
||||||
// For backward compatibility: isTwoAddress means operand 1 is tied to
|
|
||||||
// operand 0.
|
|
||||||
if (isTwoAddress) {
|
|
||||||
if (!OperandList[1].Constraints[0].isNone())
|
|
||||||
throw R->getName() + ": cannot use isTwoAddress property: instruction "
|
|
||||||
"already has constraint set!";
|
|
||||||
OperandList[1].Constraints[0] =
|
|
||||||
CodeGenInstruction::ConstraintInfo::getTied(0);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Parse the DisableEncoding field.
|
// Parse the DisableEncoding field.
|
||||||
std::string DisableEncoding = R->getValueAsString("DisableEncoding");
|
std::string DisableEncoding = R->getValueAsString("DisableEncoding");
|
||||||
while (1) {
|
while (1) {
|
||||||
|
Loading…
Reference in New Issue
Block a user