summaryrefslogtreecommitdiff
path: root/src/trans/target.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/trans/target.cpp')
-rw-r--r--src/trans/target.cpp16
1 files changed, 15 insertions, 1 deletions
diff --git a/src/trans/target.cpp b/src/trans/target.cpp
index 53d84030..70996fb0 100644
--- a/src/trans/target.cpp
+++ b/src/trans/target.cpp
@@ -42,7 +42,7 @@ const TargetArch ARCH_M68K = {
"m68k",
32, true,
{ /*atomic(u8)=*/true, false, true, false, true },
- TargetArch::Alignments(2, 4, 8, 16, 4, 8, 4) // TODO: Does m68k have lower alignments?
+ TargetArch::Alignments(2, 2, 2, 2, 2, 2, 2)
};
TargetSpec g_target;
@@ -511,6 +511,20 @@ namespace
ARCH_X86_64
};
}
+ else if(target_name == "arm-unknown-haiku")
+ {
+ return TargetSpec {
+ "unix", "haiku", "gnu", {CodegenMode::Gnu11, true, "arm-unknown-haiku", {}, {}},
+ ARCH_ARM32
+ };
+ }
+ else if(target_name == "x86_64-unknown-haiku")
+ {
+ return TargetSpec {
+ "unix", "haiku", "gnu", {CodegenMode::Gnu11, false, "x86_64-unknown-haiku", {}, {}},
+ ARCH_X86_64
+ };
+ }
else
{
::std::cerr << "Unknown target name '" << target_name << "'" << ::std::endl;