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 **** #include "hal.h"
- 2:simple-speck.c **** #include <stdint.h>
- 3:simple-speck.c **** #include <stdlib.h>
- 4:simple-speck.c ****
- 5:simple-speck.c **** #include "simpleserial.h"
- 6:simple-speck.c **** #include "speck.h"
- 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, #8
- 42 .LVL1:
- 43 .loc 1 12 2 view .LVU4
- 44 0006 6F20 movs r0, #111
- 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, #0
- 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, #0
- 84 0004 1146 mov r1, r2
- 85 .LVL5:
- 86 .loc 1 65 2 view .LVU12
- 87 0006 7220 movs r0, #114
- 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, #0
- 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, #4] @ unaligned
- 128 000a 5360 str r3, [r2, #4] @ unaligned
- 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, #1
- 136 000e C31D adds r3, r0, #7
- 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, #0
- 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, #1]! @ zero_extendqisi2
- 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, #0
- 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, #1
- 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, #8
- 25:simple-speck.c **** }
- 177 .loc 1 25 22 discriminator 3 view .LVU40
- 178 002c 05F8010B strb r0, [r5], #1
- 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, #0
- 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, #16
- 233 000e 2646 mov r6, r4
- 234 .L13:
- 235 0010 1868 ldr r0, [r3] @ unaligned
- 236 0012 5968 ldr r1, [r3, #4] @ unaligned
- 237 0014 2546 mov r5, r4
- 238 0016 03C5 stmia r5!, {r0, r1}
- 239 0018 0833 adds r3, r3, #8
- 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, #16
- 249 0028 7220 movs r0, #114
- 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, #0
- 255 0030 04B0 add sp, sp, #16
- 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, #20
- 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, #4] @ unaligned
- 303 0010 02AA add r2, sp, #8
- 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, #8
- 308 0016 01AA add r2, sp, #4
- 309 0018 02A9 add r1, sp, #8
- 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, #0
- 313 001e 0195 str r5, [sp, #4]
- 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, #4
- 322 002a 0421 movs r1, #4
- 323 002c 6320 movs r0, #99
- 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, #20
- 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, #16
- 380 0016 7020 movs r0, #112
- 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, #4
- 386 0020 6520 movs r0, #101
- 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, #4
- 392 002a 6B20 movs r0, #107
- 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, #8
- 398 0034 7320 movs r0, #115
- 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, #0
- 404 003e 7820 movs r0, #120
- 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
|