diff --git a/aclocal.m4 b/aclocal.m4
index f5e7050a6986cf686bacc2fc7765d0aaacdf89a0..54b167254839b9bba1e20819996a61351c899648 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -1992,6 +1992,10 @@ case "$1" in
 # converts the canonicalized target into someting llvm can understand
 AC_DEFUN([GHC_LLVM_TARGET], [
   case "$2-$3" in
+    *-freebsd*-gnueabihf)
+      llvm_target_vendor="unknown"
+      llvm_target_os="freebsd-gnueabihf"
+      ;;
     hardfloat-*eabi)
       llvm_target_vendor="unknown"
       llvm_target_os="$3""hf"
diff --git a/llvm-targets b/llvm-targets
index 9cf969822c02053a9b2fd864b1564a80ee7fbbe1..e11ab1bb9fd6ca9ddaa677fe95d4aef419707528 100644
--- a/llvm-targets
+++ b/llvm-targets
@@ -43,7 +43,7 @@
 ,("amd64-portbld-freebsd", ("e-m:e-i64:64-f80:128-n8:16:32:64-S128", "x86-64", ""))
 ,("x86_64-unknown-freebsd", ("e-m:e-i64:64-f80:128-n8:16:32:64-S128", "x86-64", ""))
 ,("aarch64-unknown-freebsd", ("e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128", "generic", "+neon"))
-,("armv6-unknown-freebsd", ("e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64", "arm1176jzf-s", "+strict-align"))
-,("armv7-unknown-freebsd", ("e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64", "generic", "+strict-align"))
+,("armv6-unknown-freebsd-gnueabihf", ("e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64", "arm1176jzf-s", "+strict-align"))
+,("armv7-unknown-freebsd-gnueabihf", ("e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64", "generic", "+strict-align"))
 ,("arm-unknown-nto-qnx-eabi", ("e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64", "arm7tdmi", "+strict-align"))
 ]
diff --git a/utils/llvm-targets/gen-data-layout.sh b/utils/llvm-targets/gen-data-layout.sh
index 4f4a1ef079263fb771557b72f90f3db6a73704e8..aba2d07ae0f8beeb4f69a4d1b851e852c10ddf1a 100755
--- a/utils/llvm-targets/gen-data-layout.sh
+++ b/utils/llvm-targets/gen-data-layout.sh
@@ -94,8 +94,8 @@ TARGETS=(
 
     # FreeBSD ARM
     "aarch64-unknown-freebsd"
-    "armv6-unknown-freebsd"
-    "armv7-unknown-freebsd"
+    "armv6-unknown-freebsd-gnueabihf"
+    "armv7-unknown-freebsd-gnueabihf"
 
     #########################
     # Other