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"
| signext
| readnone
| readonly
+ | inlinehint
+ | alignstack
| noinline
| alwaysinline
| optsize
| ssp
| sspreq
+ | returns_twice
+ | nonlazybind
+ | sanitize_address
+ | sanitize_thread
+ | sanitize_memory
;
OptFuncAttrs ::= + _ | OptFuncAttrs FuncAttr ;
OptExact ::= - exact | _ ;
OptNSW ::= - nsw | _ ;
OptNUW ::= - nuw | _ ;
-OptNW ::= OptNUW OptNSW ;
+OptNW ::= OptNUW OptNSW | OptNSW OptNUW ;
OptInBounds ::= - inbounds | _ ;
MemoryInst ::= malloc Types OptCAlign