]> git.lizzy.rs Git - rust.git/blob - src/test/ui/issues/issue-33264.rs
Auto merge of #54624 - arielb1:evaluate-outlives, r=nikomatsakis
[rust.git] / src / test / ui / issues / issue-33264.rs
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 // compile-pass
12 // only-x86_64
13
14 #![allow(dead_code, non_upper_case_globals)]
15 #![feature(asm)]
16
17 #[repr(C)]
18 pub struct D32x4(f32,f32,f32,f32);
19
20 impl D32x4 {
21     fn add(&self, vec: Self) -> Self {
22         unsafe {
23             let ret: Self;
24             asm!("
25                  movaps $1, %xmm1
26                  movaps $2, %xmm2
27                  addps %xmm1, %xmm2
28                  movaps $xmm1, $0
29                  "
30                  : "=r"(ret)
31                  : "1"(self), "2"(vec)
32                  : "xmm1", "xmm2"
33                  );
34             ret
35         }
36     }
37 }
38
39 fn main() { }
40