mirror of
https://github.com/kmackay/micro-ecc.git
synced 2026-06-05 21:14:51 +00:00
Fix Thumb-2 inline asm (#15)
This commit is contained in:
+16
@@ -1265,6 +1265,7 @@ static void vli_square(uint32_t *p_result, uint32_t *p_left)
|
||||
"mov r14, r11 \n\t"
|
||||
"umlal r8, r11, r3, r4 \n\t"
|
||||
"cmp r14, r11 \n\t"
|
||||
"it hi \n\t"
|
||||
"adchi r12, #0 \n\t"
|
||||
"adds r8, r8 \n\t"
|
||||
"adcs r11, r11 \n\t"
|
||||
@@ -1279,6 +1280,7 @@ static void vli_square(uint32_t *p_result, uint32_t *p_left)
|
||||
"mov r14, r9 \n\t"
|
||||
"umlal r8, r9, r3, r5 \n\t"
|
||||
"cmp r14, r9 \n\t"
|
||||
"it hi \n\t"
|
||||
"adchi r10, #0 \n\t"
|
||||
"adds r8, r8 \n\t"
|
||||
"adcs r9, r9 \n\t"
|
||||
@@ -1286,6 +1288,7 @@ static void vli_square(uint32_t *p_result, uint32_t *p_left)
|
||||
"mov r14, r9 \n\t"
|
||||
"umlal r8, r9, r4, r4 \n\t"
|
||||
"cmp r14, r9 \n\t"
|
||||
"it hi \n\t"
|
||||
"adchi r10, #0 \n\t"
|
||||
"adds r8, r11 \n\t"
|
||||
"adcs r9, r12 \n\t"
|
||||
@@ -1297,10 +1300,12 @@ static void vli_square(uint32_t *p_result, uint32_t *p_left)
|
||||
"mov r14, r11 \n\t"
|
||||
"umlal r8, r11, r3, r6 \n\t"
|
||||
"cmp r14, r11 \n\t"
|
||||
"it hi \n\t"
|
||||
"adchi r12, #0 \n\t"
|
||||
"mov r14, r11 \n\t"
|
||||
"umlal r8, r11, r4, r5 \n\t"
|
||||
"cmp r14, r11 \n\t"
|
||||
"it hi \n\t"
|
||||
"adchi r12, #0 \n\t"
|
||||
"adds r8, r8 \n\t"
|
||||
"adcs r11, r11 \n\t"
|
||||
@@ -1316,6 +1321,7 @@ static void vli_square(uint32_t *p_result, uint32_t *p_left)
|
||||
"mov r14, r9 \n\t"
|
||||
"umlal r8, r9, r4, r6 \n\t"
|
||||
"cmp r14, r9 \n\t"
|
||||
"it hi \n\t"
|
||||
"adchi r10, #0 \n\t"
|
||||
"ldr r14, [r0] \n\t"
|
||||
"adds r8, r14 \n\t"
|
||||
@@ -1327,6 +1333,7 @@ static void vli_square(uint32_t *p_result, uint32_t *p_left)
|
||||
"mov r14, r9 \n\t"
|
||||
"umlal r8, r9, r5, r5 \n\t"
|
||||
"cmp r14, r9 \n\t"
|
||||
"it hi \n\t"
|
||||
"adchi r10, #0 \n\t"
|
||||
"adds r8, r11 \n\t"
|
||||
"adcs r9, r12 \n\t"
|
||||
@@ -1338,10 +1345,12 @@ static void vli_square(uint32_t *p_result, uint32_t *p_left)
|
||||
"mov r14, r11 \n\t"
|
||||
"umlal r8, r11, r4, r7 \n\t"
|
||||
"cmp r14, r11 \n\t"
|
||||
"it hi \n\t"
|
||||
"adchi r12, #0 \n\t"
|
||||
"mov r14, r11 \n\t"
|
||||
"umlal r8, r11, r5, r6 \n\t"
|
||||
"cmp r14, r11 \n\t"
|
||||
"it hi \n\t"
|
||||
"adchi r12, #0 \n\t"
|
||||
"ldr r14, [r0] \n\t"
|
||||
"adds r8, r14 \n\t"
|
||||
@@ -1361,6 +1370,7 @@ static void vli_square(uint32_t *p_result, uint32_t *p_left)
|
||||
"mov r14, r9 \n\t"
|
||||
"umlal r8, r9, r5, r7 \n\t"
|
||||
"cmp r14, r9 \n\t"
|
||||
"it hi \n\t"
|
||||
"adchi r10, #0 \n\t"
|
||||
"ldr r14, [r0] \n\t"
|
||||
"adds r8, r14 \n\t"
|
||||
@@ -1372,6 +1382,7 @@ static void vli_square(uint32_t *p_result, uint32_t *p_left)
|
||||
"mov r14, r9 \n\t"
|
||||
"umlal r8, r9, r6, r6 \n\t"
|
||||
"cmp r14, r9 \n\t"
|
||||
"it hi \n\t"
|
||||
"adchi r10, #0 \n\t"
|
||||
"adds r8, r11 \n\t"
|
||||
"adcs r9, r12 \n\t"
|
||||
@@ -1383,10 +1394,12 @@ static void vli_square(uint32_t *p_result, uint32_t *p_left)
|
||||
"mov r14, r11 \n\t"
|
||||
"umlal r8, r11, r5, r2 \n\t"
|
||||
"cmp r14, r11 \n\t"
|
||||
"it hi \n\t"
|
||||
"adchi r12, #0 \n\t"
|
||||
"mov r14, r11 \n\t"
|
||||
"umlal r8, r11, r6, r7 \n\t"
|
||||
"cmp r14, r11 \n\t"
|
||||
"it hi \n\t"
|
||||
"adchi r12, #0 \n\t"
|
||||
"ldr r14, [r0] \n\t"
|
||||
"adds r8, r14 \n\t"
|
||||
@@ -1405,6 +1418,7 @@ static void vli_square(uint32_t *p_result, uint32_t *p_left)
|
||||
"mov r14, r9 \n\t"
|
||||
"umlal r8, r9, r6, r2 \n\t"
|
||||
"cmp r14, r9 \n\t"
|
||||
"it hi \n\t"
|
||||
"adchi r10, #0 \n\t"
|
||||
"adds r8, r8 \n\t"
|
||||
"adcs r9, r9 \n\t"
|
||||
@@ -1412,6 +1426,7 @@ static void vli_square(uint32_t *p_result, uint32_t *p_left)
|
||||
"mov r14, r9 \n\t"
|
||||
"umlal r8, r9, r7, r7 \n\t"
|
||||
"cmp r14, r9 \n\t"
|
||||
"it hi \n\t"
|
||||
"adchi r10, #0 \n\t"
|
||||
"adds r8, r11 \n\t"
|
||||
"adcs r9, r12 \n\t"
|
||||
@@ -1423,6 +1438,7 @@ static void vli_square(uint32_t *p_result, uint32_t *p_left)
|
||||
"mov r14, r11 \n\t"
|
||||
"umlal r8, r11, r7, r2 \n\t"
|
||||
"cmp r14, r11 \n\t"
|
||||
"it hi \n\t"
|
||||
"adchi r12, #0 \n\t"
|
||||
"adds r8, r8 \n\t"
|
||||
"adcs r11, r11 \n\t"
|
||||
|
||||
@@ -30,6 +30,7 @@ def mulacc(acc, r1, r2):
|
||||
emit("mov r14, r%s", acc[1])
|
||||
emit("umlal r%s, r%s, r%s, r%s", acc[0], acc[1], r1, r2)
|
||||
emit("cmp r14, r%s", acc[1])
|
||||
emit("it hi")
|
||||
emit("adchi r%s, #0", acc[2])
|
||||
|
||||
r = [2, 3, 4, 5, 6, 7]
|
||||
|
||||
Reference in New Issue
Block a user