Rollup merge of #132950 - knickish:m68k_gnu_ld, r=workingjubilee

Use GNU ld on m68k-unknown-linux-gnu

LLD does not really support the M68k architecture yet, specify `m68k-linux-gnu-ld` as the linker for the platform
This commit is contained in:
Matthias Krüger 2024-11-12 23:26:44 +01:00 committed by GitHub
commit f7e40680b5
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -1,5 +1,5 @@
use crate::abi::Endian; use crate::abi::Endian;
use crate::spec::{Target, TargetOptions, base}; use crate::spec::{LinkSelfContainedDefault, Target, TargetOptions, base};
pub(crate) fn target() -> Target { pub(crate) fn target() -> Target {
let mut base = base::linux_gnu::opts(); let mut base = base::linux_gnu::opts();
@ -17,6 +17,13 @@ pub(crate) fn target() -> Target {
pointer_width: 32, pointer_width: 32,
data_layout: "E-m:e-p:32:16:32-i8:8:8-i16:16:16-i32:16:32-n8:16:32-a:0:16-S16".into(), data_layout: "E-m:e-p:32:16:32-i8:8:8-i16:16:16-i32:16:32-n8:16:32-a:0:16-S16".into(),
arch: "m68k".into(), arch: "m68k".into(),
options: TargetOptions { endian: Endian::Big, mcount: "_mcount".into(), ..base }, options: TargetOptions {
endian: Endian::Big,
mcount: "_mcount".into(),
// LLD currently does not have support for M68k
link_self_contained: LinkSelfContainedDefault::False,
..base
},
} }
} }