diff options
author | Christopher Lamb <christopher.lamb@gmail.com> | 2008-03-13 05:47:01 +0000 |
---|---|---|
committer | Christopher Lamb <christopher.lamb@gmail.com> | 2008-03-13 05:47:01 +0000 |
commit | 6634e26aa11b0e2eabde8b3b463bb943364f8d9d (patch) | |
tree | f6acb329d49272da4adec8fba66734bba41760b5 /include/llvm | |
parent | 3bdfa04cbe42106d2dc55d0dd980ba9e52a3bd84 (diff) | |
download | external_llvm-6634e26aa11b0e2eabde8b3b463bb943364f8d9d.zip external_llvm-6634e26aa11b0e2eabde8b3b463bb943364f8d9d.tar.gz external_llvm-6634e26aa11b0e2eabde8b3b463bb943364f8d9d.tar.bz2 |
Get rid of a pseudo instruction and replace it with subreg based operation on real instructions, ridding the asm printers of the hack used to do this previously. In the process, update LowerSubregs to be careful about eliminating copies that have side affects.
Note: the coalescer will have to be careful about this too, when it starts coalescing insert_subreg nodes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48329 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm')
-rw-r--r-- | include/llvm/Target/TargetInstrInfo.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/include/llvm/Target/TargetInstrInfo.h b/include/llvm/Target/TargetInstrInfo.h index 7526087..d19ca12 100644 --- a/include/llvm/Target/TargetInstrInfo.h +++ b/include/llvm/Target/TargetInstrInfo.h @@ -51,6 +51,15 @@ public: EXTRACT_SUBREG = 4, INSERT_SUBREG = 5 }; + + // Target independent implict values for use with subreg insert. All targets + // that support insert_subreg support IMPL_VAL_UNDEF. Support for the other + // values is target dependent. + enum ImplictVal { + IMPL_VAL_UNDEF = 0, + IMPL_VAL_ZERO = 1, + LAST_IMPL_VAL = 3 + }; unsigned getNumOpcodes() const { return NumOpcodes; } @@ -120,7 +129,6 @@ public: return false; } - /// convertToThreeAddress - This method must be implemented by targets that /// set the M_CONVERTIBLE_TO_3_ADDR flag. When this flag is set, the target /// may be able to convert a two-address instruction into one or more true |