]> git.proxmox.com Git - rustc.git/blame - compiler/rustc_target/src/spec/i686_uwp_windows_gnu.rs
New upstream version 1.74.1+dfsg1
[rustc.git] / compiler / rustc_target / src / spec / i686_uwp_windows_gnu.rs
CommitLineData
2b03887a 1use crate::spec::{Cc, FramePointer, LinkerFlavor, Lld, Target};
416331ca 2
29967ef6 3pub fn target() -> Target {
ba9703b0 4 let mut base = super::windows_uwp_gnu_base::opts();
5e7ed085 5 base.cpu = "pentium4".into();
416331ca 6 base.max_atomic_width = Some(64);
136023e0 7 base.frame_pointer = FramePointer::Always; // Required for backtraces
416331ca
XL
8
9 // Mark all dynamic libraries and executables as compatible with the larger 4GiB address
10 // space available to x86 Windows binaries on x86_64.
2b03887a
FG
11 base.add_pre_link_args(
12 LinkerFlavor::Gnu(Cc::No, Lld::No),
13 &["-m", "i386pe", "--large-address-aware"],
14 );
15 base.add_pre_link_args(LinkerFlavor::Gnu(Cc::Yes, Lld::No), &["-Wl,--large-address-aware"]);
416331ca 16
29967ef6 17 Target {
5e7ed085 18 llvm_target: "i686-pc-windows-gnu".into(),
29967ef6 19 pointer_width: 32,
dfeec247
XL
20 data_layout: "e-m:x-p:32:32-p270:32:32-p271:32:32-p272:64:64-\
21 i64:64-f80:32-n8:16:32-a:0:32-S32"
5e7ed085
FG
22 .into(),
23 arch: "x86".into(),
416331ca 24 options: base,
29967ef6 25 }
416331ca 26}