Adjustments to finalize for experiment

This commit is contained in:
2020-01-21 10:35:15 -05:00
parent 54e64d982e
commit c6fcb4aa66
2 changed files with 97 additions and 98 deletions

View File

@@ -11,142 +11,141 @@ fs_load:
mov v0.s[2], v0.s[0]
mov v0.s[3], v0.s[0]
fmov s31, 1.0
ucvtf s30, w1
ucvtf s30, w1
mov v1.s[3], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v1.s[2], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v1.s[1], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v1.s[0], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v2.s[3], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v2.s[2], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v2.s[1], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v2.s[0], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v3.s[3], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v3.s[2], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v3.s[1], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v3.s[0], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v4.s[3], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v4.s[2], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v4.s[1], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v4.s[0], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v5.s[3], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v5.s[2], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v5.s[1], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v5.s[0], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v6.s[3], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v6.s[2], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v6.s[1], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v6.s[0], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v7.s[3], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v7.s[2], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v7.s[1], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v7.s[0], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v8.s[3], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v8.s[2], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v8.s[1], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v8.s[0], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v9.s[3], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v9.s[2], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v9.s[1], v30.s[0]
fadd s30, s30, s31
fadd s30, s30, s31
mov v9.s[0], v30.s[0]
fadd s30, s30, s31
mov v10.s[3], v10.s[0]
fadd s30, s30, s31
mov v10.s[2], v10.s[0]
fadd s30, s30, s31
mov v10.s[1], v10.s[0]
fadd s30, s30, s31
mov v10.s[0], v30.s[0]
fadd s30, s30, s31
mov v10.s[3], v10.s[0]
fadd s30, s30, s31
mov v10.s[2], v10.s[0]
fadd s30, s30, s31
mov v10.s[1], v10.s[0]
fadd s30, s30, s31
mov v10.s[0], v30.s[0]
fadd s30, s30, s31
mov v11.s[3], v30.s[0]
fadd s30, s30, s31
mov v11.s[2], v30.s[0]
fadd s30, s30, s31
mov v11.s[1], v30.s[0]
fadd s30, s30, s31
mov v11.s[0], v30.s[0]
fadd s30, s30, s31
mov v11.s[3], v30.s[0]
fadd s30, s30, s31
mov v11.s[2], v30.s[0]
fadd s30, s30, s31
mov v11.s[1], v30.s[0]
fadd s30, s30, s31
mov v11.s[0], v30.s[0]
fadd s30, s30, s31
mov v12.s[3], v30.s[0]
fadd s30, s30, s31
mov v12.s[2], v30.s[0]
fadd s30, s30, s31
mov v12.s[1], v30.s[0]
fadd s30, s30, s31
mov v12.s[0], v30.s[0]
fadd s30, s30, s31
mov v12.s[3], v30.s[0]
fadd s30, s30, s31
mov v12.s[2], v30.s[0]
fadd s30, s30, s31
mov v12.s[1], v30.s[0]
fadd s30, s30, s31
mov v12.s[0], v30.s[0]
fadd s30, s30, s31
mov v13.s[3], v30.s[0]
fadd s30, s30, s31
mov v13.s[2], v30.s[0]
fadd s30, s30, s31
mov v13.s[1], v30.s[0]
fadd s30, s30, s31
mov v13.s[0], v30.s[0]
fadd s30, s30, s31
mov v13.s[3], v30.s[0]
fadd s30, s30, s31
mov v13.s[2], v30.s[0]
fadd s30, s30, s31
mov v13.s[1], v30.s[0]
fadd s30, s30, s31
mov v13.s[0], v30.s[0]
fadd s30, s30, s31
mov v14.s[3], v30.s[0]
fadd s30, s30, s31
mov v14.s[2], v30.s[0]
fadd s30, s30, s31
mov v14.s[1], v30.s[0]
fadd s30, s30, s31
mov v14.s[0], v30.s[0]
fadd s30, s30, s31
mov v14.s[3], v30.s[0]
fadd s30, s30, s31
mov v14.s[2], v30.s[0]
fadd s30, s30, s31
mov v14.s[1], v30.s[0]
fadd s30, s30, s31
mov v14.s[0], v30.s[0]
fadd s30, s30, s31
mov v15.s[3], v30.s[0]
fadd s30, s30, s31
mov v15.s[2], v30.s[0]
fadd s30, s30, s31
mov v15.s[1], v30.s[0]
fadd s30, s30, s31
mov v15.s[0], v30.s[0]
fadd s30, s30, s31
mov v15.s[3], v30.s[0]
fadd s30, s30, s31
mov v15.s[2], v30.s[0]
fadd s30, s30, s31
mov v15.s[1], v30.s[0]
fadd s30, s30, s31
mov v15.s[0], v30.s[0]
#mov s30, wzr
#mov s31, wzr
@@ -185,5 +184,4 @@ fs_routine:
fdiv v29.4s, v29.4s, v2.4s
fdiv v30.4s, v30.4s, v1.4s
mov w0, v16.s[3]
ret

View File

@@ -23,23 +23,24 @@ TEXT_SECTION
unsigned long long _start(float *init_a)
{
int i;
unsigned long long check;
unsigned long long start, end, report;
unsigned long long timer_deadline_enter = 0x10000b874;
unsigned long long halt = 0x1000004fc;
fs_load(init_a, 1);
__asm__ volatile ("mrs %0, cntpct_el0" : "=r" (start));
for(i = 0; i < 8; i++) check = fs_routine();
__asm__ volatile ("mrs %0, cntpct_el0" : "=r" (end));
if(2 * end - start - 64 > 0)
while(1)
{
((BOOTROM_FUNC) timer_deadline_enter)(2 * end - start - 64, ((BOOTROM_FUNC) 0x10000b924));
((BOOTROM_FUNC) halt)();
__asm__ volatile ("mrs %0, cntpct_el0" : "=r" (start));
fs_load(init_a, 1);
for(i = 0; i < 8; i++) fs_routine();
__asm__ volatile ("mrs %0, cntpct_el0" : "=r" (end));
if(2 * end - start - 64 > 0)
{
((BOOTROM_FUNC) timer_deadline_enter)(2 * end - start - 64, ((BOOTROM_FUNC) 0x10000b924));
((BOOTROM_FUNC) halt)();
}
}
__asm__ volatile ("mrs %0, cntpct_el0" : "=r" (report));
return report - start;
return end - start;
}