comparison dyncallback/dyncall_args_arm32_arm.c @ 45:e5cdf4b4d813

- armhf callback fix for calls with >= 64byte of floating point params where d7 is filled before all args are pushed
author cslag
date Sat, 19 Dec 2015 23:24:35 +0100
parents f01895437921
children c4de113dc1e9
comparison
equal deleted inserted replaced
44:b8f16ad80e34 45:e5cdf4b4d813
92 /* freg_count is either odd (pointing to a gap), or always the same as dreg_count */ 92 /* freg_count is either odd (pointing to a gap), or always the same as dreg_count */
93 if(!(args->freg_count & 1)) 93 if(!(args->freg_count & 1))
94 args->freg_count = args->dreg_count; 94 args->freg_count = args->dreg_count;
95 return d.d; 95 return d.d;
96 } 96 }
97 args->freg_count = 16; /* float registers all filled up - stop filling gaps for single precision, also */
97 #endif 98 #endif
98 arm_align_64(args); 99 arm_align_64(args);
99 d.l[0] = *(DClong*)arm_word(args); 100 d.l[0] = *(DClong*)arm_word(args);
100 d.l[1] = *(DClong*)arm_word(args); 101 d.l[1] = *(DClong*)arm_word(args);
101 return d.d; 102 return d.d;