Commit 748883b4 authored by kgardas's avatar kgardas

enable ARM specific target data layout and triple again

This patch is allowed by the 'on ARMv7 with VFPv3[D16] support pass
 appropriate -mattr value to LLVM llc' patch. The trick is that LLVM
by default (probably!) does not enable VFP, but GHC requires it
so LLVM's llc asserts on unavailable floating point register. i.e. GHC/LLVM
backend compiles into LLVM code which is using floats, but llc thinks
no float regs for this are available. Passing appropriate llc option
which is implemented in patch mentioned above fixes this issue.
parent 3fff0020
......@@ -51,12 +51,12 @@ moduleLayout =
$+$ text "target triple = \"x86_64-linux-gnu\""
-- #elif defined (arm_TARGET_ARCH)
#elif defined (arm_TARGET_ARCH)
-- #if linux_TARGET_OS
-- text "target datalayout = \"e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:64:128-a0:0:64-n32\""
-- $+$ text "target triple = \"arm-unknown-linux-gnueabi\""
-- #endif
#if linux_TARGET_OS
text "target datalayout = \"e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:64:128-a0:0:64-n32\""
$+$ text "target triple = \"arm-unknown-linux-gnueabi\""
-- FIX: Other targets
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