| 
 | 1 | +// Copyright 2018 The Rust Project Developers. See the COPYRIGHT  | 
 | 2 | +// file at the top-level directory of this distribution and at  | 
 | 3 | +// http://rust-lang.org/COPYRIGHT.  | 
 | 4 | +//  | 
 | 5 | +// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or  | 
 | 6 | +// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license  | 
 | 7 | +// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your  | 
 | 8 | +// option. This file may not be copied, modified, or distributed  | 
 | 9 | +// except according to those terms.  | 
 | 10 | + | 
 | 11 | +use LinkerFlavor;  | 
 | 12 | +use target::{Target, TargetResult};  | 
 | 13 | + | 
 | 14 | +pub fn target() -> TargetResult {  | 
 | 15 | +    let mut base = super::linux_base::opts();  | 
 | 16 | +    base.cpu = "v9".to_string();  | 
 | 17 | +    base.max_atomic_width = Some(64);  | 
 | 18 | +    base.pre_link_args.get_mut(&LinkerFlavor::Gcc).unwrap().push("-mv8plus".to_string());  | 
 | 19 | +    base.exe_allocation_crate = None;  | 
 | 20 | + | 
 | 21 | +    Ok(Target {  | 
 | 22 | +        llvm_target: "sparc-unknown-linux-gnu".to_string(),  | 
 | 23 | +        target_endian: "big".to_string(),  | 
 | 24 | +        target_pointer_width: "32".to_string(),  | 
 | 25 | +        target_c_int_width: "32".to_string(),  | 
 | 26 | +        data_layout: "E-m:e-p:32:32-i64:64-f128:64-n32-S64".to_string(),  | 
 | 27 | +        arch: "sparc".to_string(),  | 
 | 28 | +        target_os: "linux".to_string(),  | 
 | 29 | +        target_env: "gnu".to_string(),  | 
 | 30 | +        target_vendor: "unknown".to_string(),  | 
 | 31 | +        linker_flavor: LinkerFlavor::Gcc,  | 
 | 32 | +        options: base,  | 
 | 33 | +    })  | 
 | 34 | +}  | 
0 commit comments