| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626 | 
							-    1              		.cpu cortex-m4
 
-    2              		.eabi_attribute 20, 1
 
-    3              		.eabi_attribute 21, 1
 
-    4              		.eabi_attribute 23, 3
 
-    5              		.eabi_attribute 24, 1
 
-    6              		.eabi_attribute 25, 1
 
-    7              		.eabi_attribute 26, 1
 
-    8              		.eabi_attribute 30, 4
 
-    9              		.eabi_attribute 34, 1
 
-   10              		.eabi_attribute 18, 4
 
-   11              		.file	"simple-speck.c"
 
-   12              		.text
 
-   13              	.Ltext0:
 
-   14              		.cfi_sections	.debug_frame
 
-   15              		.section	.text.get_key,"ax",%progbits
 
-   16              		.align	1
 
-   17              		.global	get_key
 
-   18              		.arch armv7e-m
 
-   19              		.syntax unified
 
-   20              		.thumb
 
-   21              		.thumb_func
 
-   22              		.fpu softvfp
 
-   24              	get_key:
 
-   25              	.LVL0:
 
-   26              	.LFB0:
 
-   27              		.file 1 "simple-speck.c"
 
-    1:simple-speck.c **** 
 
-    2:simple-speck.c **** 
 
-    3:simple-speck.c **** 
 
-    4:simple-speck.c **** 
 
-    5:simple-speck.c **** 
 
-    6:simple-speck.c **** 
 
-    7:simple-speck.c **** 
 
-    8:simple-speck.c **** u8 gkey[8] = {0x00};
 
-    9:simple-speck.c **** u8 rand_data[8] = {0x00};
 
-   10:simple-speck.c **** 
 
-   11:simple-speck.c **** uint8_t get_key(uint8_t* k, uint8_t len) {
 
-   28              		.loc 1 11 42 view -0
 
-   29              		.cfi_startproc
 
-   30              		@ args = 0, pretend = 0, frame = 0
 
-   31              		@ frame_needed = 0, uses_anonymous_args = 0
 
-   12:simple-speck.c **** 	simpleserial_put('o', 8, gkey);
 
-   32              		.loc 1 12 2 view .LVU1
 
-   11:simple-speck.c **** 	simpleserial_put('o', 8, gkey);
 
-   33              		.loc 1 11 42 is_stmt 0 view .LVU2
 
-   34 0000 08B5     		push	{r3, lr}
 
-   35              	.LCFI0:
 
-   36              		.cfi_def_cfa_offset 8
 
-   37              		.cfi_offset 3, -8
 
-   38              		.cfi_offset 14, -4
 
-   39              		.loc 1 12 2 view .LVU3
 
-   40 0002 034A     		ldr	r2, .L2
 
-   41 0004 0821     		movs	r1, 
 
-   42              	.LVL1:
 
-   43              		.loc 1 12 2 view .LVU4
 
-   44 0006 6F20     		movs	r0, 
 
-   45              	.LVL2:
 
-   46              		.loc 1 12 2 view .LVU5
 
-   47 0008 FFF7FEFF 		bl	simpleserial_put
 
-   48              	.LVL3:
 
-   13:simple-speck.c **** 	return 0x00;
 
-   49              		.loc 1 13 2 is_stmt 1 view .LVU6
 
-   14:simple-speck.c **** }
 
-   50              		.loc 1 14 1 is_stmt 0 view .LVU7
 
-   51 000c 0020     		movs	r0, 
 
-   52 000e 08BD     		pop	{r3, pc}
 
-   53              	.L3:
 
-   54              		.align	2
 
-   55              	.L2:
 
-   56 0010 00000000 		.word	.LANCHOR0
 
-   57              		.cfi_endproc
 
-   58              	.LFE0:
 
-   60              		.section	.text.reset,"ax",%progbits
 
-   61              		.align	1
 
-   62              		.global	reset
 
-   63              		.syntax unified
 
-   64              		.thumb
 
-   65              		.thumb_func
 
-   66              		.fpu softvfp
 
-   68              	reset:
 
-   69              	.LVL4:
 
-   70              	.LFB4:
 
-   15:simple-speck.c **** 
 
-   16:simple-speck.c **** uint8_t set_key(uint8_t* key, uint8_t len) {
 
-   17:simple-speck.c ****     memcpy(gkey, key, 8);
 
-   18:simple-speck.c ****     int sum = 0;
 
-   19:simple-speck.c ****     for(int i=0; i < 8; i++) {
 
-   20:simple-speck.c ****         sum += key[i];
 
-   21:simple-speck.c ****     }
 
-   22:simple-speck.c ****     // initialize random value
 
-   23:simple-speck.c ****     srand(sum);
 
-   24:simple-speck.c ****     for(int i=0; i < 8; i++) {
 
-   25:simple-speck.c ****         rand_data[i] = rand() & 0xFF;
 
-   26:simple-speck.c ****     }
 
-   27:simple-speck.c ****     return 0x00;
 
-   28:simple-speck.c **** }
 
-   29:simple-speck.c **** 
 
-   30:simple-speck.c **** uint8_t get_pt(uint8_t* pt, uint8_t len) {
 
-   31:simple-speck.c **** 	/**********************************
 
-   32:simple-speck.c **** 	* Start user-specific code here. */
 
-   33:simple-speck.c **** 	trigger_high();
 
-   34:simple-speck.c **** 
 
-   35:simple-speck.c ****         // Only for testing purposes
 
-   36:simple-speck.c ****         volatile uint8_t testing_output[] = {0x42, 0x41, 0x41, 0x41,0x41, 0x41, 0x41, 0x41, 0x41, 0
 
-   37:simple-speck.c **** 
 
-   38:simple-speck.c **** 
 
-   39:simple-speck.c **** 	trigger_low();
 
-   40:simple-speck.c **** 	/* End user-specific code here. *
 
-   41:simple-speck.c **** 	********************************/
 
-   42:simple-speck.c **** 	simpleserial_put('r', 16, testing_output);
 
-   43:simple-speck.c **** 
 
-   44:simple-speck.c **** 	return 0x00;
 
-   45:simple-speck.c **** }
 
-   46:simple-speck.c **** 
 
-   47:simple-speck.c **** 
 
-   48:simple-speck.c **** uint8_t encrypt_block(uint8_t* pt, uint8_t len) {
 
-   49:simple-speck.c **** 
 
-   50:simple-speck.c ****     trigger_high(); // TRIGGER START
 
-   51:simple-speck.c **** 
 
-   52:simple-speck.c ****     u8 key[8] = {0x00};
 
-   53:simple-speck.c ****     memcpy(key, gkey, 8); // copy the globally set encryption key
 
-   54:simple-speck.c ****     u8 ct[4] = {0x00};
 
-   55:simple-speck.c ****     Speck3264_EncryptBlock(pt, key, ct, rand_data); // the encryption happens here
 
-   56:simple-speck.c **** 
 
-   57:simple-speck.c ****     trigger_low(); // TRIGGER STOP
 
-   58:simple-speck.c **** 
 
-   59:simple-speck.c ****     simpleserial_put('c', 4, ct);
 
-   60:simple-speck.c ****     return 0x00;
 
-   61:simple-speck.c **** }
 
-   62:simple-speck.c **** 
 
-   63:simple-speck.c **** 
 
-   64:simple-speck.c **** uint8_t reset(uint8_t* x, uint8_t len) {
 
-   71              		.loc 1 64 40 is_stmt 1 view -0
 
-   72              		.cfi_startproc
 
-   73              		@ args = 0, pretend = 0, frame = 0
 
-   74              		@ frame_needed = 0, uses_anonymous_args = 0
 
-   65:simple-speck.c **** 	simpleserial_put('r', 0, NULL);
 
-   75              		.loc 1 65 2 view .LVU9
 
-   64:simple-speck.c **** 	simpleserial_put('r', 0, NULL);
 
-   76              		.loc 1 64 40 is_stmt 0 view .LVU10
 
-   77 0000 08B5     		push	{r3, lr}
 
-   78              	.LCFI1:
 
-   79              		.cfi_def_cfa_offset 8
 
-   80              		.cfi_offset 3, -8
 
-   81              		.cfi_offset 14, -4
 
-   82              		.loc 1 65 2 view .LVU11
 
-   83 0002 0022     		movs	r2, 
 
-   84 0004 1146     		mov	r1, r2
 
-   85              	.LVL5:
 
-   86              		.loc 1 65 2 view .LVU12
 
-   87 0006 7220     		movs	r0, 
 
-   88              	.LVL6:
 
-   89              		.loc 1 65 2 view .LVU13
 
-   90 0008 FFF7FEFF 		bl	simpleserial_put
 
-   91              	.LVL7:
 
-   66:simple-speck.c **** 	// Reset key here if needed
 
-   67:simple-speck.c **** 	return 0x00;
 
-   92              		.loc 1 67 2 is_stmt 1 view .LVU14
 
-   68:simple-speck.c **** }
 
-   93              		.loc 1 68 1 is_stmt 0 view .LVU15
 
-   94 000c 0020     		movs	r0, 
 
-   95 000e 08BD     		pop	{r3, pc}
 
-   96              		.cfi_endproc
 
-   97              	.LFE4:
 
-   99              		.section	.text.set_key,"ax",%progbits
 
-  100              		.align	1
 
-  101              		.global	set_key
 
-  102              		.syntax unified
 
-  103              		.thumb
 
-  104              		.thumb_func
 
-  105              		.fpu softvfp
 
-  107              	set_key:
 
-  108              	.LVL8:
 
-  109              	.LFB1:
 
-   16:simple-speck.c ****     memcpy(gkey, key, 8);
 
-  110              		.loc 1 16 44 is_stmt 1 view -0
 
-  111              		.cfi_startproc
 
-  112              		@ args = 0, pretend = 0, frame = 0
 
-  113              		@ frame_needed = 0, uses_anonymous_args = 0
 
-   17:simple-speck.c ****     int sum = 0;
 
-  114              		.loc 1 17 5 view .LVU17
 
-   16:simple-speck.c ****     memcpy(gkey, key, 8);
 
-  115              		.loc 1 16 44 is_stmt 0 view .LVU18
 
-  116 0000 38B5     		push	{r3, r4, r5, lr}
 
-  117              	.LCFI2:
 
-  118              		.cfi_def_cfa_offset 16
 
-  119              		.cfi_offset 3, -16
 
-  120              		.cfi_offset 4, -12
 
-  121              		.cfi_offset 5, -8
 
-  122              		.cfi_offset 14, -4
 
-   17:simple-speck.c ****     int sum = 0;
 
-  123              		.loc 1 17 5 view .LVU19
 
-  124 0002 0D4A     		ldr	r2, .L10
 
-  125 0004 0368     		ldr	r3, [r0]	@ unaligned
 
-  126 0006 1360     		str	r3, [r2]	@ unaligned
 
-  127 0008 4368     		ldr	r3, [r0, 
 
-  128 000a 5360     		str	r3, [r2, 
 
-   18:simple-speck.c ****     for(int i=0; i < 8; i++) {
 
-  129              		.loc 1 18 5 is_stmt 1 view .LVU20
 
-  130              	.LVL9:
 
-   19:simple-speck.c ****         sum += key[i];
 
-  131              		.loc 1 19 5 view .LVU21
 
-  132              	.LBB2:
 
-   19:simple-speck.c ****         sum += key[i];
 
-  133              		.loc 1 19 9 view .LVU22
 
-   19:simple-speck.c ****         sum += key[i];
 
-  134              		.loc 1 19 20 view .LVU23
 
-  135 000c 421E     		subs	r2, r0, 
 
-  136 000e C31D     		adds	r3, r0, 
 
-  137              	.LBE2:
 
-   18:simple-speck.c ****     for(int i=0; i < 8; i++) {
 
-  138              		.loc 1 18 9 is_stmt 0 view .LVU24
 
-  139 0010 0020     		movs	r0, 
 
-  140              	.LVL10:
 
-  141              	.L6:
 
-  142              	.LBB3:
 
-   20:simple-speck.c ****     }
 
-  143              		.loc 1 20 9 is_stmt 1 discriminator 3 view .LVU25
 
-   20:simple-speck.c ****     }
 
-  144              		.loc 1 20 19 is_stmt 0 discriminator 3 view .LVU26
 
-  145 0012 12F8011F 		ldrb	r1, [r2, 
 
-  146              	.LVL11:
 
-   19:simple-speck.c ****         sum += key[i];
 
-  147              		.loc 1 19 20 discriminator 3 view .LVU27
 
-  148 0016 9A42     		cmp	r2, r3
 
-   20:simple-speck.c ****     }
 
-  149              		.loc 1 20 13 discriminator 3 view .LVU28
 
-  150 0018 0844     		add	r0, r0, r1
 
-  151              	.LVL12:
 
-   19:simple-speck.c ****         sum += key[i];
 
-  152              		.loc 1 19 26 is_stmt 1 discriminator 3 view .LVU29
 
-   19:simple-speck.c ****         sum += key[i];
 
-  153              		.loc 1 19 20 discriminator 3 view .LVU30
 
-  154 001a FAD1     		bne	.L6
 
-  155              	.LBE3:
 
-   23:simple-speck.c ****     for(int i=0; i < 8; i++) {
 
-  156              		.loc 1 23 5 view .LVU31
 
-  157 001c FFF7FEFF 		bl	srand
 
-  158              	.LVL13:
 
-   24:simple-speck.c ****         rand_data[i] = rand() & 0xFF;
 
-  159              		.loc 1 24 5 view .LVU32
 
-  160              	.LBB4:
 
-   24:simple-speck.c ****         rand_data[i] = rand() & 0xFF;
 
-  161              		.loc 1 24 9 view .LVU33
 
-   24:simple-speck.c ****         rand_data[i] = rand() & 0xFF;
 
-  162              		.loc 1 24 20 view .LVU34
 
-  163 0020 064D     		ldr	r5, .L10+4
 
-   24:simple-speck.c ****         rand_data[i] = rand() & 0xFF;
 
-  164              		.loc 1 24 13 is_stmt 0 view .LVU35
 
-  165 0022 0024     		movs	r4, 
 
-  166              	.LVL14:
 
-  167              	.L7:
 
-   25:simple-speck.c ****     }
 
-  168              		.loc 1 25 9 is_stmt 1 discriminator 3 view .LVU36
 
-   25:simple-speck.c ****     }
 
-  169              		.loc 1 25 24 is_stmt 0 discriminator 3 view .LVU37
 
-  170 0024 FFF7FEFF 		bl	rand
 
-  171              	.LVL15:
 
-   24:simple-speck.c ****         rand_data[i] = rand() & 0xFF;
 
-  172              		.loc 1 24 26 discriminator 3 view .LVU38
 
-  173 0028 0134     		adds	r4, r4, 
 
-  174              	.LVL16:
 
-   24:simple-speck.c ****         rand_data[i] = rand() & 0xFF;
 
-  175              		.loc 1 24 20 discriminator 3 view .LVU39
 
-  176 002a 082C     		cmp	r4, 
 
-   25:simple-speck.c ****     }
 
-  177              		.loc 1 25 22 discriminator 3 view .LVU40
 
-  178 002c 05F8010B 		strb	r0, [r5], 
 
-   24:simple-speck.c ****         rand_data[i] = rand() & 0xFF;
 
-  179              		.loc 1 24 26 is_stmt 1 discriminator 3 view .LVU41
 
-  180              	.LVL17:
 
-   24:simple-speck.c ****         rand_data[i] = rand() & 0xFF;
 
-  181              		.loc 1 24 20 discriminator 3 view .LVU42
 
-  182 0030 F8D1     		bne	.L7
 
-  183              	.LBE4:
 
-   27:simple-speck.c **** }
 
-  184              		.loc 1 27 5 view .LVU43
 
-   28:simple-speck.c **** 
 
-  185              		.loc 1 28 1 is_stmt 0 view .LVU44
 
-  186 0032 0020     		movs	r0, 
 
-  187 0034 38BD     		pop	{r3, r4, r5, pc}
 
-  188              	.LVL18:
 
-  189              	.L11:
 
-   28:simple-speck.c **** 
 
-  190              		.loc 1 28 1 view .LVU45
 
-  191 0036 00BF     		.align	2
 
-  192              	.L10:
 
-  193 0038 00000000 		.word	.LANCHOR0
 
-  194 003c 08000000 		.word	.LANCHOR0+8
 
-  195              		.cfi_endproc
 
-  196              	.LFE1:
 
-  198              		.section	.rodata.str1.1,"aMS",%progbits,1
 
-  199              	.LC0:
 
-  200 0000 42414141 		.ascii	"BAAAAAAAAAAAAAAA\000"
 
-  200      41414141 
 
-  200      41414141 
 
-  200      41414141 
 
-  200      00
 
-  201              		.section	.text.get_pt,"ax",%progbits
 
-  202              		.align	1
 
-  203              		.global	get_pt
 
-  204              		.syntax unified
 
-  205              		.thumb
 
-  206              		.thumb_func
 
-  207              		.fpu softvfp
 
-  209              	get_pt:
 
-  210              	.LVL19:
 
-  211              	.LFB2:
 
-   30:simple-speck.c **** 	/**********************************
 
-  212              		.loc 1 30 42 is_stmt 1 view -0
 
-  213              		.cfi_startproc
 
-  214              		@ args = 0, pretend = 0, frame = 16
 
-  215              		@ frame_needed = 0, uses_anonymous_args = 0
 
-   33:simple-speck.c **** 
 
-  216              		.loc 1 33 2 view .LVU47
 
-   30:simple-speck.c **** 	/**********************************
 
-  217              		.loc 1 30 42 is_stmt 0 view .LVU48
 
-  218 0000 7FB5     		push	{r0, r1, r2, r3, r4, r5, r6, lr}
 
-  219              	.LCFI3:
 
-  220              		.cfi_def_cfa_offset 32
 
-  221              		.cfi_offset 4, -16
 
-  222              		.cfi_offset 5, -12
 
-  223              		.cfi_offset 6, -8
 
-  224              		.cfi_offset 14, -4
 
-   33:simple-speck.c **** 
 
-  225              		.loc 1 33 2 view .LVU49
 
-  226 0002 FFF7FEFF 		bl	trigger_high
 
-  227              	.LVL20:
 
-   36:simple-speck.c **** 
 
-  228              		.loc 1 36 9 is_stmt 1 view .LVU50
 
-   36:simple-speck.c **** 
 
-  229              		.loc 1 36 26 is_stmt 0 view .LVU51
 
-  230 0006 0B4B     		ldr	r3, .L15
 
-  231 0008 6C46     		mov	r4, sp
 
-  232 000a 03F11002 		add	r2, r3, 
 
-  233 000e 2646     		mov	r6, r4
 
-  234              	.L13:
 
-  235 0010 1868     		ldr	r0, [r3]	@ unaligned
 
-  236 0012 5968     		ldr	r1, [r3, 
 
-  237 0014 2546     		mov	r5, r4
 
-  238 0016 03C5     		stmia	r5!, {r0, r1}
 
-  239 0018 0833     		adds	r3, r3, 
 
-  240 001a 9342     		cmp	r3, r2
 
-  241 001c 2C46     		mov	r4, r5
 
-  242 001e F7D1     		bne	.L13
 
-   39:simple-speck.c **** 	/* End user-specific code here. *
 
-  243              		.loc 1 39 2 is_stmt 1 view .LVU52
 
-  244 0020 FFF7FEFF 		bl	trigger_low
 
-  245              	.LVL21:
 
-   42:simple-speck.c **** 
 
-  246              		.loc 1 42 2 view .LVU53
 
-  247 0024 3246     		mov	r2, r6
 
-  248 0026 1021     		movs	r1, 
 
-  249 0028 7220     		movs	r0, 
 
-  250 002a FFF7FEFF 		bl	simpleserial_put
 
-  251              	.LVL22:
 
-   44:simple-speck.c **** }
 
-  252              		.loc 1 44 2 view .LVU54
 
-   45:simple-speck.c **** 
 
-  253              		.loc 1 45 1 is_stmt 0 view .LVU55
 
-  254 002e 0020     		movs	r0, 
 
-  255 0030 04B0     		add	sp, sp, 
 
-  256              	.LCFI4:
 
-  257              		.cfi_def_cfa_offset 16
 
-  258              		@ sp needed
 
-  259 0032 70BD     		pop	{r4, r5, r6, pc}
 
-  260              	.L16:
 
-  261              		.align	2
 
-  262              	.L15:
 
-  263 0034 00000000 		.word	.LC0
 
-  264              		.cfi_endproc
 
-  265              	.LFE2:
 
-  267              		.section	.text.encrypt_block,"ax",%progbits
 
-  268              		.align	1
 
-  269              		.global	encrypt_block
 
-  270              		.syntax unified
 
-  271              		.thumb
 
-  272              		.thumb_func
 
-  273              		.fpu softvfp
 
-  275              	encrypt_block:
 
-  276              	.LVL23:
 
-  277              	.LFB3:
 
-   48:simple-speck.c **** 
 
-  278              		.loc 1 48 49 is_stmt 1 view -0
 
-  279              		.cfi_startproc
 
-  280              		@ args = 0, pretend = 0, frame = 16
 
-  281              		@ frame_needed = 0, uses_anonymous_args = 0
 
-   50:simple-speck.c **** 
 
-  282              		.loc 1 50 5 view .LVU57
 
-   48:simple-speck.c **** 
 
-  283              		.loc 1 48 49 is_stmt 0 view .LVU58
 
-  284 0000 30B5     		push	{r4, r5, lr}
 
-  285              	.LCFI5:
 
-  286              		.cfi_def_cfa_offset 12
 
-  287              		.cfi_offset 4, -12
 
-  288              		.cfi_offset 5, -8
 
-  289              		.cfi_offset 14, -4
 
-  290 0002 85B0     		sub	sp, sp, 
 
-  291              	.LCFI6:
 
-  292              		.cfi_def_cfa_offset 32
 
-   48:simple-speck.c **** 
 
-  293              		.loc 1 48 49 view .LVU59
 
-  294 0004 0446     		mov	r4, r0
 
-   50:simple-speck.c **** 
 
-  295              		.loc 1 50 5 view .LVU60
 
-  296 0006 FFF7FEFF 		bl	trigger_high
 
-  297              	.LVL24:
 
-   52:simple-speck.c ****     memcpy(key, gkey, 8); // copy the globally set encryption key
 
-  298              		.loc 1 52 5 is_stmt 1 view .LVU61
 
-   53:simple-speck.c ****     u8 ct[4] = {0x00};
 
-  299              		.loc 1 53 5 view .LVU62
 
-  300 000a 0B4B     		ldr	r3, .L18
 
-  301 000c 1868     		ldr	r0, [r3]	@ unaligned
 
-  302 000e 5968     		ldr	r1, [r3, 
 
-  303 0010 02AA     		add	r2, sp, 
 
-  304 0012 03C2     		stmia	r2!, {r0, r1}
 
-   54:simple-speck.c ****     Speck3264_EncryptBlock(pt, key, ct, rand_data); // the encryption happens here
 
-  305              		.loc 1 54 5 view .LVU63
 
-   55:simple-speck.c **** 
 
-  306              		.loc 1 55 5 is_stmt 0 view .LVU64
 
-  307 0014 0833     		adds	r3, r3, 
 
-  308 0016 01AA     		add	r2, sp, 
 
-  309 0018 02A9     		add	r1, sp, 
 
-  310 001a 2046     		mov	r0, r4
 
-   54:simple-speck.c ****     Speck3264_EncryptBlock(pt, key, ct, rand_data); // the encryption happens here
 
-  311              		.loc 1 54 8 view .LVU65
 
-  312 001c 0025     		movs	r5, 
 
-  313 001e 0195     		str	r5, [sp, 
 
-   55:simple-speck.c **** 
 
-  314              		.loc 1 55 5 is_stmt 1 view .LVU66
 
-  315 0020 FFF7FEFF 		bl	Speck3264_EncryptBlock
 
-  316              	.LVL25:
 
-   57:simple-speck.c **** 
 
-  317              		.loc 1 57 5 view .LVU67
 
-  318 0024 FFF7FEFF 		bl	trigger_low
 
-  319              	.LVL26:
 
-   59:simple-speck.c ****     return 0x00;
 
-  320              		.loc 1 59 5 view .LVU68
 
-  321 0028 01AA     		add	r2, sp, 
 
-  322 002a 0421     		movs	r1, 
 
-  323 002c 6320     		movs	r0, 
 
-  324 002e FFF7FEFF 		bl	simpleserial_put
 
-  325              	.LVL27:
 
-   60:simple-speck.c **** }
 
-  326              		.loc 1 60 5 view .LVU69
 
-   61:simple-speck.c **** 
 
-  327              		.loc 1 61 1 is_stmt 0 view .LVU70
 
-  328 0032 2846     		mov	r0, r5
 
-  329 0034 05B0     		add	sp, sp, 
 
-  330              	.LCFI7:
 
-  331              		.cfi_def_cfa_offset 12
 
-  332              		@ sp needed
 
-  333 0036 30BD     		pop	{r4, r5, pc}
 
-  334              	.LVL28:
 
-  335              	.L19:
 
-   61:simple-speck.c **** 
 
-  336              		.loc 1 61 1 view .LVU71
 
-  337              		.align	2
 
-  338              	.L18:
 
-  339 0038 00000000 		.word	.LANCHOR0
 
-  340              		.cfi_endproc
 
-  341              	.LFE3:
 
-  343              		.section	.text.startup.main,"ax",%progbits
 
-  344              		.align	1
 
-  345              		.global	main
 
-  346              		.syntax unified
 
-  347              		.thumb
 
-  348              		.thumb_func
 
-  349              		.fpu softvfp
 
-  351              	main:
 
-  352              	.LFB5:
 
-   69:simple-speck.c **** 
 
-   70:simple-speck.c **** 
 
-   71:simple-speck.c **** int main(void) {
 
-  353              		.loc 1 71 16 is_stmt 1 view -0
 
-  354              		.cfi_startproc
 
-  355              		@ Volatile: function does not return.
 
-  356              		@ args = 0, pretend = 0, frame = 0
 
-  357              		@ frame_needed = 0, uses_anonymous_args = 0
 
-   72:simple-speck.c ****     platform_init();
 
-  358              		.loc 1 72 5 view .LVU73
 
-   71:simple-speck.c ****     platform_init();
 
-  359              		.loc 1 71 16 is_stmt 0 view .LVU74
 
-  360 0000 08B5     		push	{r3, lr}
 
-  361              	.LCFI8:
 
-  362              		.cfi_def_cfa_offset 8
 
-  363              		.cfi_offset 3, -8
 
-  364              		.cfi_offset 14, -4
 
-  365              		.loc 1 72 5 view .LVU75
 
-  366 0002 FFF7FEFF 		bl	platform_init
 
-  367              	.LVL29:
 
-   73:simple-speck.c **** 	init_uart();
 
-  368              		.loc 1 73 2 is_stmt 1 view .LVU76
 
-  369 0006 FFF7FEFF 		bl	init_uart
 
-  370              	.LVL30:
 
-   74:simple-speck.c **** 	trigger_setup();
 
-  371              		.loc 1 74 2 view .LVU77
 
-  372 000a FFF7FEFF 		bl	trigger_setup
 
-  373              	.LVL31:
 
-   75:simple-speck.c **** 
 
-   76:simple-speck.c ****  	/* Uncomment this to get a HELLO message for debug */
 
-   77:simple-speck.c ****         /*
 
-   78:simple-speck.c **** 	putch('h');
 
-   79:simple-speck.c **** 	putch('e');
 
-   80:simple-speck.c **** 	putch('l');
 
-   81:simple-speck.c **** 	putch('l');
 
-   82:simple-speck.c **** 	putch('o');
 
-   83:simple-speck.c **** 	putch('\n');
 
-   84:simple-speck.c ****         */
 
-   85:simple-speck.c **** 
 
-   86:simple-speck.c **** 	simpleserial_init();
 
-  374              		.loc 1 86 2 view .LVU78
 
-  375 000e FFF7FEFF 		bl	simpleserial_init
 
-  376              	.LVL32:
 
-   87:simple-speck.c **** 	simpleserial_addcmd('p', 16, get_pt);
 
-  377              		.loc 1 87 2 view .LVU79
 
-  378 0012 0E4A     		ldr	r2, .L22
 
-  379 0014 1021     		movs	r1, 
 
-  380 0016 7020     		movs	r0, 
 
-  381 0018 FFF7FEFF 		bl	simpleserial_addcmd
 
-  382              	.LVL33:
 
-   88:simple-speck.c **** 	simpleserial_addcmd('e', 4, encrypt_block);
 
-  383              		.loc 1 88 2 view .LVU80
 
-  384 001c 0C4A     		ldr	r2, .L22+4
 
-  385 001e 0421     		movs	r1, 
 
-  386 0020 6520     		movs	r0, 
 
-  387 0022 FFF7FEFF 		bl	simpleserial_addcmd
 
-  388              	.LVL34:
 
-   89:simple-speck.c **** 	simpleserial_addcmd('k', 4, get_key);
 
-  389              		.loc 1 89 2 view .LVU81
 
-  390 0026 0B4A     		ldr	r2, .L22+8
 
-  391 0028 0421     		movs	r1, 
 
-  392 002a 6B20     		movs	r0, 
 
-  393 002c FFF7FEFF 		bl	simpleserial_addcmd
 
-  394              	.LVL35:
 
-   90:simple-speck.c **** 	simpleserial_addcmd('s', 8, set_key);
 
-  395              		.loc 1 90 2 view .LVU82
 
-  396 0030 094A     		ldr	r2, .L22+12
 
-  397 0032 0821     		movs	r1, 
 
-  398 0034 7320     		movs	r0, 
 
-  399 0036 FFF7FEFF 		bl	simpleserial_addcmd
 
-  400              	.LVL36:
 
-   91:simple-speck.c **** 	simpleserial_addcmd('x', 0, reset);
 
-  401              		.loc 1 91 2 view .LVU83
 
-  402 003a 084A     		ldr	r2, .L22+16
 
-  403 003c 0021     		movs	r1, 
 
-  404 003e 7820     		movs	r0, 
 
-  405 0040 FFF7FEFF 		bl	simpleserial_addcmd
 
-  406              	.LVL37:
 
-  407              	.L21:
 
-   92:simple-speck.c **** 
 
-   93:simple-speck.c **** 	while(1)
 
-  408              		.loc 1 93 2 discriminator 1 view .LVU84
 
-   94:simple-speck.c **** 		simpleserial_get();
 
-  409              		.loc 1 94 3 discriminator 1 view .LVU85
 
-  410 0044 FFF7FEFF 		bl	simpleserial_get
 
-  411              	.LVL38:
 
-   93:simple-speck.c **** 		simpleserial_get();
 
-  412              		.loc 1 93 7 discriminator 1 view .LVU86
 
-  413 0048 FCE7     		b	.L21
 
-  414              	.L23:
 
-  415 004a 00BF     		.align	2
 
-  416              	.L22:
 
-  417 004c 00000000 		.word	get_pt
 
-  418 0050 00000000 		.word	encrypt_block
 
-  419 0054 00000000 		.word	get_key
 
-  420 0058 00000000 		.word	set_key
 
-  421 005c 00000000 		.word	reset
 
-  422              		.cfi_endproc
 
-  423              	.LFE5:
 
-  425              		.global	rand_data
 
-  426              		.global	gkey
 
-  427              		.bss
 
-  428              		.set	.LANCHOR0,. + 0
 
-  431              	gkey:
 
-  432 0000 00000000 		.space	8
 
-  432      00000000 
 
-  435              	rand_data:
 
-  436 0008 00000000 		.space	8
 
-  436      00000000 
 
-  437              		.text
 
-  438              	.Letext0:
 
-  439              		.file 2 "/usr/arm-none-eabi/include/machine/_default_types.h"
 
-  440              		.file 3 "/usr/arm-none-eabi/include/sys/_stdint.h"
 
-  441              		.file 4 "deps//simpleserial/simpleserial.h"
 
-  442              		.file 5 "deps//hal/stm32f3/stm32f3_hal.h"
 
-  443              		.file 6 "deps//hal/hal.h"
 
-  444              		.file 7 "speck.h"
 
-  445              		.file 8 "/usr/arm-none-eabi/include/stdlib.h"
 
-  446              		.file 9 "<built-in>"
 
- DEFINED SYMBOLS
 
-                             *ABS*:0000000000000000 simple-speck.c
 
-      /tmp/ccLR1Kpf.s:16     .text.get_key:0000000000000000 $t
 
-      /tmp/ccLR1Kpf.s:24     .text.get_key:0000000000000000 get_key
 
-      /tmp/ccLR1Kpf.s:56     .text.get_key:0000000000000010 $d
 
-      /tmp/ccLR1Kpf.s:61     .text.reset:0000000000000000 $t
 
-      /tmp/ccLR1Kpf.s:68     .text.reset:0000000000000000 reset
 
-      /tmp/ccLR1Kpf.s:100    .text.set_key:0000000000000000 $t
 
-      /tmp/ccLR1Kpf.s:107    .text.set_key:0000000000000000 set_key
 
-      /tmp/ccLR1Kpf.s:193    .text.set_key:0000000000000038 $d
 
-      /tmp/ccLR1Kpf.s:202    .text.get_pt:0000000000000000 $t
 
-      /tmp/ccLR1Kpf.s:209    .text.get_pt:0000000000000000 get_pt
 
-      /tmp/ccLR1Kpf.s:263    .text.get_pt:0000000000000034 $d
 
-      /tmp/ccLR1Kpf.s:268    .text.encrypt_block:0000000000000000 $t
 
-      /tmp/ccLR1Kpf.s:275    .text.encrypt_block:0000000000000000 encrypt_block
 
-      /tmp/ccLR1Kpf.s:339    .text.encrypt_block:0000000000000038 $d
 
-      /tmp/ccLR1Kpf.s:344    .text.startup.main:0000000000000000 $t
 
-      /tmp/ccLR1Kpf.s:351    .text.startup.main:0000000000000000 main
 
-      /tmp/ccLR1Kpf.s:417    .text.startup.main:000000000000004c $d
 
-      /tmp/ccLR1Kpf.s:435    .bss:0000000000000008 rand_data
 
-      /tmp/ccLR1Kpf.s:431    .bss:0000000000000000 gkey
 
-      /tmp/ccLR1Kpf.s:432    .bss:0000000000000000 $d
 
- UNDEFINED SYMBOLS
 
- simpleserial_put
 
- srand
 
- rand
 
- trigger_high
 
- trigger_low
 
- Speck3264_EncryptBlock
 
- platform_init
 
- init_uart
 
- trigger_setup
 
- simpleserial_init
 
- simpleserial_addcmd
 
- simpleserial_get
 
 
  |