@@ -36,57 +36,36 @@ extern "C" {
36
36
fn memset ( dest : * mut u8 , c : i32 , n : usize ) -> * mut u8 ;
37
37
}
38
38
39
- // FIXME: The `*4` and `*8` variants should be defined as aliases.
39
+ // Create aliases for the *4 and *8 variants
40
+ #[ link_args = "--defsym=__aeabi_memcpy4=__aeabi_memcpy --defsym=__aeabi_memcpy8=__aeabi_memcpy" ]
41
+ extern { }
40
42
41
43
#[ cfg_attr( not( test) , no_mangle) ]
42
44
pub unsafe extern "C" fn __aeabi_memcpy ( dest : * mut u8 , src : * const u8 , n : usize ) {
43
45
memcpy ( dest, src, n) ;
44
46
}
45
- #[ cfg_attr( not( test) , no_mangle) ]
46
- pub unsafe extern "C" fn __aeabi_memcpy4 ( dest : * mut u8 , src : * const u8 , n : usize ) {
47
- memcpy ( dest, src, n) ;
48
- }
49
- #[ cfg_attr( not( test) , no_mangle) ]
50
- pub unsafe extern "C" fn __aeabi_memcpy8 ( dest : * mut u8 , src : * const u8 , n : usize ) {
51
- memcpy ( dest, src, n) ;
52
- }
47
+
48
+ #[ link_args = "--defsym=__aeabi_memmove4=__aeabi_memmove --defsym=__aeabi_memmove8=__aeabi_memmove" ]
49
+ extern { }
53
50
54
51
#[ cfg_attr( not( test) , no_mangle) ]
55
52
pub unsafe extern "C" fn __aeabi_memmove ( dest : * mut u8 , src : * const u8 , n : usize ) {
56
53
memmove ( dest, src, n) ;
57
54
}
58
- #[ cfg_attr( not( test) , no_mangle) ]
59
- pub unsafe extern "C" fn __aeabi_memmove4 ( dest : * mut u8 , src : * const u8 , n : usize ) {
60
- memmove ( dest, src, n) ;
61
- }
62
- #[ cfg_attr( not( test) , no_mangle) ]
63
- pub unsafe extern "C" fn __aeabi_memmove8 ( dest : * mut u8 , src : * const u8 , n : usize ) {
64
- memmove ( dest, src, n) ;
65
- }
55
+
56
+ #[ link_args = "--defsym=__aeabi_memset4=__aeabi_memset --defsym=__aeabi_memset8=__aeabi_memset" ]
57
+ extern { }
66
58
67
59
// Note the different argument order
68
60
#[ cfg_attr( not( test) , no_mangle) ]
69
61
pub unsafe extern "C" fn __aeabi_memset ( dest : * mut u8 , n : usize , c : i32 ) {
70
62
memset ( dest, c, n) ;
71
63
}
72
- #[ cfg_attr( not( test) , no_mangle) ]
73
- pub unsafe extern "C" fn __aeabi_memset4 ( dest : * mut u8 , n : usize , c : i32 ) {
74
- memset ( dest, c, n) ;
75
- }
76
- #[ cfg_attr( not( test) , no_mangle) ]
77
- pub unsafe extern "C" fn __aeabi_memset8 ( dest : * mut u8 , n : usize , c : i32 ) {
78
- memset ( dest, c, n) ;
79
- }
64
+
65
+ #[ link_args = "--defsym=__aeabi_memclr4=__aeabi_memclr --defsym=__aeabi_memclr8=__aeabi_memclr" ]
66
+ extern { }
80
67
81
68
#[ cfg_attr( not( test) , no_mangle) ]
82
69
pub unsafe extern "C" fn __aeabi_memclr ( dest : * mut u8 , n : usize ) {
83
70
memset ( dest, 0 , n) ;
84
71
}
85
- #[ cfg_attr( not( test) , no_mangle) ]
86
- pub unsafe extern "C" fn __aeabi_memclr4 ( dest : * mut u8 , n : usize ) {
87
- memset ( dest, 0 , n) ;
88
- }
89
- #[ cfg_attr( not( test) , no_mangle) ]
90
- pub unsafe extern "C" fn __aeabi_memclr8 ( dest : * mut u8 , n : usize ) {
91
- memset ( dest, 0 , n) ;
92
- }
0 commit comments