]> git.lizzy.rs Git - rust.git/commitdiff
Put vector types in regs for arm & mips FFI.
authorHuon Wilson <dbau.pp+github@gmail.com>
Thu, 15 Jan 2015 03:43:24 +0000 (14:43 +1100)
committerHuon Wilson <dbau.pp+github@gmail.com>
Fri, 16 Jan 2015 11:49:40 +0000 (22:49 +1100)
This seems to match what clang does on arm, but I cannot do any
experimentation with mips, but it matches how the LLVM intrinsics are
defined in any case...

src/librustc_trans/trans/cabi_aarch64.rs
src/librustc_trans/trans/cabi_arm.rs
src/librustc_trans/trans/cabi_mips.rs

index 3485e29707aa26d9d87526117ceb1ec51ee9843b..0d8ef9e2fc92e6c6829568ba4ec5fc9a59afad29 100644 (file)
@@ -139,7 +139,8 @@ fn is_reg_ty(ty: Type) -> bool {
         Integer
         | Pointer
         | Float
-        | Double => true,
+        | Double
+        | Vector => true,
         _ => false
     }
 }
index 13c70875f689ae38aa1adcb32654feefb7b4d9c1..7d1a8ab1452eca5b4316330a453261d554ef615f 100644 (file)
@@ -169,7 +169,8 @@ fn is_reg_ty(ty: Type) -> bool {
         Integer
         | Pointer
         | Float
-        | Double => true,
+        | Double
+        | Vector => true,
         _ => false
     }
 }
index 70b29b5fb758ee29e16fcd5847b427d30e13bbe8..776be8855cbf7a6269eedc6e36caed53420664dd 100644 (file)
@@ -123,7 +123,8 @@ fn is_reg_ty(ty: Type) -> bool {
         Integer
         | Pointer
         | Float
-        | Double => true,
+        | Double
+        | Vector => true,
         _ => false
     };
 }