Commit 0be38a22 authored by Ben Gamari's avatar Ben Gamari 🐢
Browse files

llvmGen: Add strictness to metadata fields

parent f4b0488d
......@@ -65,9 +65,9 @@ instance Outputable MetaId where
ppr (MetaId n) = char '!' <> int n
-- | LLVM metadata expressions
data MetaExpr = MetaStr LMString
| MetaNode MetaId
| MetaVar LlvmVar
data MetaExpr = MetaStr !LMString
| MetaNode !MetaId
| MetaVar !LlvmVar
| MetaStruct [MetaExpr]
deriving (Eq)
......@@ -87,7 +87,7 @@ data MetaAnnot = MetaAnnot LMString MetaExpr
data MetaDecl
-- | Named metadata. Only used for communicating module information to
-- LLVM. ('!name = !{ [!<n>] }' form).
= MetaNamed LMString [MetaId]
= MetaNamed !LMString [MetaId]
-- | Metadata node declaration.
-- ('!0 = metadata !{ <metadata expression> }' form).
| MetaUnnamed MetaId MetaExpr
| MetaUnnamed !MetaId !MetaExpr
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment