diff options
author | John Hodge <tpg@ucc.asn.au> | 2017-12-31 12:52:55 +0800 |
---|---|---|
committer | John Hodge <tpg@ucc.asn.au> | 2018-01-07 07:29:31 +0000 |
commit | 7e25c57d060e63649fbdf1f4c5810acb83d0b52c (patch) | |
tree | d11ab1884c1c3f350eedffc48dc60ebb9f52c2fe /src/trans/target.cpp | |
parent | 7a351fbb2a755c09fda638eeba3735274481ee86 (diff) | |
download | mrust-7e25c57d060e63649fbdf1f4c5810acb83d0b52c.tar.gz |
Trans - Draft ARM32 support
Diffstat (limited to 'src/trans/target.cpp')
-rw-r--r-- | src/trans/target.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/trans/target.cpp b/src/trans/target.cpp index f13b20a3..c4aa5d55 100644 --- a/src/trans/target.cpp +++ b/src/trans/target.cpp @@ -23,6 +23,11 @@ TargetArch ARCH_X86 = { 32, false, { /*atomic(u8)=*/true, false, true, false, true } }; +TargetArch ARCH_ARM32 = { + "arm32", + 32, false, + { /*atomic(u8)=*/true, false, true, false, true } +}; TargetSpec g_target; @@ -40,6 +45,13 @@ namespace { return load_spec_from_file(target_name); } + else if(target_name == "i586-linux-gnu") + { + return TargetSpec { + "unix", "linux", "gnu", CodegenMode::Gnu11, + ARCH_X86 + }; + } else if(target_name == "x86_64-linux-gnu") { return TargetSpec { @@ -47,6 +59,13 @@ namespace ARCH_X86_64 }; } + else if(target_name == "arm-linux-gnu") + { + return TargetSpec { + "unix", "linux", "gnu", CodegenMode::Gnu11, + ARCH_ARM32 + }; + } else if(target_name == "x86_64-windows-gnu") { return TargetSpec { |