Skip to content

Commit 47a5be3

Browse files
committed
[aarch64] add size check for pointer/double/integer
1 parent c08794c commit 47a5be3

File tree

2 files changed

+39
-0
lines changed

2 files changed

+39
-0
lines changed

contrib/eus64-check/eus64-test.l

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,27 @@
2727
:integer :integer) :float)
2828
(defforeign call-ifunc *testmod* "call_ifunc" () :integer)
2929
(defforeign call-ffunc *testmod* "call_ffunc" () :float)
30+
31+
(defforeign get-size-pointer *testmod* "get_size_of_pointer" () :integer)
32+
(defforeign get-size-float32 *testmod* "get_size_of_float32" () :integer)
33+
(defforeign get-size-double *testmod* "get_size_of_double" () :integer)
34+
(defforeign get-size-long *testmod* "get_size_of_long" () :integer)
35+
(defforeign get-size-int *testmod* "get_size_of_int" () :integer)
3036
)
3137

38+
(format t "~%;;;; pointer size check ;;;;~%")
39+
40+
(format t "pointer size ~D ~D~%"
41+
lisp::sizeof-* (get-size-pointer))
42+
(format t "double size ~D ~D~%"
43+
lisp::sizeof-double (get-size-double))
44+
(format t "long integer size ~D ~D~%"
45+
(cadr (assoc :long lisp::sizeof-types))
46+
(get-size-long))
47+
(format t "integer size ~D ~D~%"
48+
lisp::sizeof-int (get-size-int))
49+
(format t "float size ~D ~D~%"
50+
lisp::sizeof-float (get-size-float32))
3251

3352
(format t "~%multiple arguments passing~%")
3453
(format t "expected result~%")

contrib/eus64-check/test_foreign.c

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -194,3 +194,23 @@ double call_ffunc() {
194194
2080.0, 2090.0,
195195
206, 207);
196196
}
197+
198+
long get_size_of_pointer() {
199+
return (sizeof(void *));
200+
}
201+
202+
long get_size_of_float32() {
203+
return (sizeof(float));
204+
}
205+
206+
long get_size_of_double() {
207+
return (sizeof(double));
208+
}
209+
210+
long get_size_of_long() {
211+
return (sizeof(long));
212+
}
213+
214+
long get_size_of_int() {
215+
return (sizeof(int));
216+
}

0 commit comments

Comments
 (0)