summaryrefslogtreecommitdiff
path: root/utils/llvm.grm
diff options
context:
space:
mode:
authorDan Gohman <gohman@apple.com>2009-07-22 22:45:30 +0000
committerDan Gohman <gohman@apple.com>2009-07-22 22:45:30 +0000
commitbfacb7e057d05ab150c0ead03f6a03bba13c09b5 (patch)
tree6edf6b5c5dc185d6de67771cf6ffd7ef66fb954c /utils/llvm.grm
parent08d012eba490c4906ec773c39db9f2a18a78c997 (diff)
downloadllvm-bfacb7e057d05ab150c0ead03f6a03bba13c09b5.tar.gz
llvm-bfacb7e057d05ab150c0ead03f6a03bba13c09b5.tar.bz2
llvm-bfacb7e057d05ab150c0ead03f6a03bba13c09b5.tar.xz
Add new optimization keywords to the polygen grammar.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@76811 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils/llvm.grm')
-rw-r--r--utils/llvm.grm8
1 files changed, 6 insertions, 2 deletions
diff --git a/utils/llvm.grm b/utils/llvm.grm
index e70533a0cd..cbb72e9283 100644
--- a/utils/llvm.grm
+++ b/utils/llvm.grm
@@ -53,8 +53,8 @@ FPVAL ::= ESAPINTVAL ^ "." ^ EUAPINTVAL | "0x" ^ HexDigitSeq ;
The rest of this file is derived directly from llvmAsmParser.y.
*)
-ArithmeticOps ::= add | fadd | sub | fsub | mul | fmul |
- udiv | sdiv | fdiv | urem | srem | frem ;
+ArithmeticOps ::= + OptNW add | fadd | OptNW sub | fsub | OptNW mul | fmul |
+ udiv | OptExact sdiv | fdiv | urem | srem | frem ;
LogicalOps ::= shl | lshr | ashr | and | or | xor;
CastOps ::= trunc | zext | sext | fptrunc | fpext | bitcast |
uitofp | sitofp | fptoui | fptosi | inttoptr | ptrtoint ;
@@ -393,6 +393,10 @@ InstVal ::=
| MemoryInst ;
OptVolatile ::= - volatile | _ ;
+OptExact ::= - exact | _ ;
+OptNSW ::= - nsw | _ ;
+OptNUW ::= - nuw | _ ;
+OptNW ::= OptNUW OptNSW ;
MemoryInst ::= malloc Types OptCAlign
| malloc Types ^ "," INTTYPE ValueRef OptCAlign