summaryrefslogtreecommitdiff
path: root/compiler/llvmGen/Llvm/AbsSyn.hs
diff options
context:
space:
mode:
authorDavid Terei <davidterei@gmail.com>2010-06-18 09:32:05 +0000
committerDavid Terei <davidterei@gmail.com>2010-06-18 09:32:05 +0000
commit24a3fee9f3ff6cef6fe471ab6f0a7ba9ac001faf (patch)
treefe36d4be479d7b798cb89bb4115460d3dbcf337d /compiler/llvmGen/Llvm/AbsSyn.hs
parent1d8585bc1160be0c21c34d1f9d9c62e22b3948a8 (diff)
downloadhaskell-24a3fee9f3ff6cef6fe471ab6f0a7ba9ac001faf.tar.gz
Add support of TNTC to llvm backend
We do this through a gnu as feature called subsections, where you can put data/code into a numbered subsection and those subsections will be joined together in descending order by gas at compile time.
Diffstat (limited to 'compiler/llvmGen/Llvm/AbsSyn.hs')
-rw-r--r--compiler/llvmGen/Llvm/AbsSyn.hs9
1 files changed, 6 insertions, 3 deletions
diff --git a/compiler/llvmGen/Llvm/AbsSyn.hs b/compiler/llvmGen/Llvm/AbsSyn.hs
index 1b8527b31f..9c255ab7df 100644
--- a/compiler/llvmGen/Llvm/AbsSyn.hs
+++ b/compiler/llvmGen/Llvm/AbsSyn.hs
@@ -44,13 +44,16 @@ data LlvmModule = LlvmModule {
-- | An LLVM Function
data LlvmFunction = LlvmFunction {
-- | The signature of this declared function.
- funcDecl :: LlvmFunctionDecl,
+ funcDecl :: LlvmFunctionDecl,
-- | The function attributes.
- funcAttrs :: [LlvmFuncAttr],
+ funcAttrs :: [LlvmFuncAttr],
+
+ -- | The section to put the function into,
+ funcSect :: LMSection,
-- | The body of the functions.
- funcBody :: LlvmBlocks
+ funcBody :: LlvmBlocks
}
type LlvmFunctions = [LlvmFunction]