
* Add patch when building with GCC on ARM * Update syntax for adding Julia packages based on version (newer versions use a different syntax)
43 lines
1.5 KiB
Diff
Executable File
43 lines
1.5 KiB
Diff
Executable File
diff -ru spack-src/src/ccalltest.c spack-src.new/src/ccalltest.c
|
|
--- spack-src/src/ccalltest.c 2019-08-01 14:58:12.092094781 +0900
|
|
+++ spack-src.new/src/ccalltest.c 2019-08-01 14:57:53.242092475 +0900
|
|
@@ -817,6 +817,7 @@
|
|
return x;
|
|
}
|
|
|
|
+#if defined(__GNUC__) && (__GNUC__ >= 6)
|
|
typedef struct {
|
|
__fp16 v1;
|
|
double v2;
|
|
@@ -833,6 +834,7 @@
|
|
struct_aa64_2 x = {v4 / 2 + 1, v1 * 2 + v2 * 4 - v3};
|
|
return x;
|
|
}
|
|
+#endif
|
|
|
|
#include <arm_neon.h>
|
|
|
|
diff -ru spack-src/src/test/ccall.jl spack-src.new/src/test/ccall.jl
|
|
--- spack-src/test/ccall.jl 2019-05-16 13:13:14.000000000 +0900
|
|
+++ spack-src.new/test/ccall.jl 2019-08-02 15:24:47.632241893 +0900
|
|
@@ -1130,19 +1130,6 @@
|
|
expected = Struct_AA64_1(v1 ÷ 2 + 1 - v3_1, v2 * 2 - 1 - v3_2)
|
|
@test res === expected
|
|
end
|
|
- for v1 in 1:4, v2 in -4:-1, v3 in 3:5, v4 in -(1:3)
|
|
- res = ccall((:test_aa64_fp16_1, libccalltest), Float16,
|
|
- (Cint, Float32, Float64, Float16),
|
|
- v1, v2, v3, v4)
|
|
- expected = Float16(v1 + v2 * 2 + v3 * 3 + v4 * 4)
|
|
- @test res === expected
|
|
-
|
|
- res = ccall((:test_aa64_fp16_2, libccalltest), Struct_AA64_2,
|
|
- (Cint, Float32, Float64, Float16),
|
|
- v1, v2, v3, v4)
|
|
- expected = Struct_AA64_2(v4 / 2 + 1, v1 * 2 + v2 * 4 - v3)
|
|
- @test res === expected
|
|
- end
|
|
for v1_1 in 1:4, v1_2 in -2:2, v2 in -4:-1, v3_1 in 3:5, v3_2 in 6:8
|
|
res = ccall((:test_aa64_vec_1, libccalltest),
|
|
VecReg{2,Int64},
|