projects
/
oota-llvm.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix isDiscardableIfUnused to include available_externally linkage.
[oota-llvm.git]
/
utils
/
llvm.grm
diff --git
a/utils/llvm.grm
b/utils/llvm.grm
index d391e2aeab9e7e742f2ac1e4c6d70539e1a92d2b..92a4053173d64f87b08460cc956d83a0e46da449 100644
(file)
--- a/
utils/llvm.grm
+++ b/
utils/llvm.grm
@@
-8,6
+8,8
@@
It is strictly syntax-based, and makes no attempt to generate
IR that is semantically valid. Most of the IR produced doesn't
pass the Verifier.
IR that is semantically valid. Most of the IR produced doesn't
pass the Verifier.
+TODO: Metadata, in all its forms
+
*)
I ::= "title: LLVM assembly language\n"
*)
I ::= "title: LLVM assembly language\n"
@@
-168,6
+170,11
@@
FuncAttr ::= noreturn
| optsize
| ssp
| sspreq
| optsize
| ssp
| sspreq
+ | returns_twice
+ | nonlazybind
+ | sanitize_address
+ | sanitize_thread
+ | sanitize_memory
;
OptFuncAttrs ::= + _ | OptFuncAttrs FuncAttr ;
;
OptFuncAttrs ::= + _ | OptFuncAttrs FuncAttr ;
@@
-398,7
+405,7
@@
OptVolatile ::= - volatile | _ ;
OptExact ::= - exact | _ ;
OptNSW ::= - nsw | _ ;
OptNUW ::= - nuw | _ ;
OptExact ::= - exact | _ ;
OptNSW ::= - nsw | _ ;
OptNUW ::= - nuw | _ ;
-OptNW ::= OptNUW OptNSW ;
+OptNW ::= OptNUW OptNSW
| OptNSW OptNUW
;
OptInBounds ::= - inbounds | _ ;
MemoryInst ::= malloc Types OptCAlign
OptInBounds ::= - inbounds | _ ;
MemoryInst ::= malloc Types OptCAlign