summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/trans/target.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/trans/target.cpp b/src/trans/target.cpp
index f91b679a..64cf19c6 100644
--- a/src/trans/target.cpp
+++ b/src/trans/target.cpp
@@ -34,6 +34,11 @@ const TargetArch ARCH_ARM32 = {
32, false,
{ /*atomic(u8)=*/true, false, true, false, true }
};
+const TargetArch ARCH_M68K = {
+ "m68k",
+ 32, true,
+ { /*atomic(u8)=*/true, false, true, false, true }
+};
TargetSpec g_target;
@@ -108,6 +113,10 @@ namespace
{
rv.m_arch = ARCH_X86_64;
}
+ else if( key_val.value.as_string() == ARCH_M68K.m_name )
+ {
+ rv.m_arch = ARCH_M68K;
+ }
else
{
// Error.
@@ -332,6 +341,13 @@ namespace
ARCH_ARM64
};
}
+ else if(target_name == "m68k-linux-gnu")
+ {
+ return TargetSpec {
+ "unix", "linux", "gnu", {CodegenMode::Gnu11, "m68k-linux-gnu", BACKEND_C_OPTS_GNU},
+ ARCH_M68K
+ };
+ }
else if(target_name == "i586-windows-gnu")
{
return TargetSpec {