aboutsummaryrefslogtreecommitdiff
path: root/utils/llvm.grm
diff options
context:
space:
mode:
authorDan Gohman <gohman@apple.com>2008-05-23 01:55:30 +0000
committerDan Gohman <gohman@apple.com>2008-05-23 01:55:30 +0000
commite4977cf750eaff28275429191821420c20b0c64f (patch)
treef1adda18e6df59cfb561a32a7d2034a053e06826 /utils/llvm.grm
parent8f8e2692705f37d61e1840e799288f2ade1e410f (diff)
Make structs and arrays first-class types, and add assembly
and bitcode support for the extractvalue and insertvalue instructions and constant expressions. Note that this does not yet include CodeGen support. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51468 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 8a2ce0dfb5..c24b9c2d6f 100644
--- a/utils/llvm.grm
+++ b/utils/llvm.grm
@@ -222,7 +222,9 @@ ConstExpr::= CastOps "(" ^ ConstVal to Types ^ ")"
| vfcmp FPredicates "(" ^ ConstVal ^ "," ConstVal ^ ")"
| extractelement "(" ^ ConstVal ^ "," ConstVal ^ ")"
| insertelement "(" ^ ConstVal ^ "," ConstVal ^ "," ConstVal ^ ")"
- | shufflevector "(" ^ ConstVal ^ "," ConstVal ^ "," ConstVal ^ ")" ;
+ | shufflevector "(" ^ ConstVal ^ "," ConstVal ^ "," ConstVal ^ ")"
+ | extractvalue "(" ^ ConstVal IndexList ^ ")"
+ | insertvalue "(" ^ ConstVal ^ "," ConstVal IndexList ^ ")" ;
ConstVector ::= ConstVector ^ "," ConstVal | ConstVal ;
@@ -373,4 +375,6 @@ MemoryInst ::= malloc Types OptCAlign
| OptVolatile load Types ValueRef OptCAlign
| OptVolatile store ResolvedVal ^ "," Types ValueRef OptCAlign
| getresult Types ValueRef ^ "," EUINT64VAL
- | getelementptr Types ValueRef IndexList ;
+ | getelementptr Types ValueRef IndexList
+ | extractvalue Types ValueRef IndexList
+ | insertvalue Types ValueRef ^ "," Types ValueRef IndexList ;