summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/AVR/AVRISelLowering.h
diff options
context:
space:
mode:
authorDylan McKay <me@dylanmckay.io>2017-05-01 09:48:55 +0000
committerDylan McKay <me@dylanmckay.io>2017-05-01 09:48:55 +0000
commit59e7fe3da8092e7dfb13376b959418bb507eaf87 (patch)
tree7ecf9a6b8d7e46e71aef2aeff38e869e13781590 /llvm/lib/Target/AVR/AVRISelLowering.h
parent4064dc76c52d9eefcf8026f2c8b91d67f470e86d (diff)
downloadbcm5719-llvm-59e7fe3da8092e7dfb13376b959418bb507eaf87.tar.gz
bcm5719-llvm-59e7fe3da8092e7dfb13376b959418bb507eaf87.zip
[AVR] Implement non-constant bit rotations
This lets us do bit rotations of variable amount. llvm-svn: 301794
Diffstat (limited to 'llvm/lib/Target/AVR/AVRISelLowering.h')
-rw-r--r--llvm/lib/Target/AVR/AVRISelLowering.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/llvm/lib/Target/AVR/AVRISelLowering.h b/llvm/lib/Target/AVR/AVRISelLowering.h
index a8cdc4e7ae2..b44c62a21ac 100644
--- a/llvm/lib/Target/AVR/AVRISelLowering.h
+++ b/llvm/lib/Target/AVR/AVRISelLowering.h
@@ -43,6 +43,8 @@ enum NodeType {
ROL, ///< Bit rotate left.
LSLLOOP, ///< A loop of single logical shift left instructions.
LSRLOOP, ///< A loop of single logical shift right instructions.
+ ROLLOOP, ///< A loop of single left bit rotate instructions.
+ RORLOOP, ///< A loop of single right bit rotate instructions.
ASRLOOP, ///< A loop of single arithmetic shift right instructions.
/// AVR conditional branches. Operand 0 is the chain operand, operand 1
/// is the block to branch if condition is true, operand 2 is the
OpenPOWER on IntegriCloud