ARM GAS /tmp/ccVdKlK4.s page 1 1 .cpu cortex-m4 2 .eabi_attribute 27, 1 3 .eabi_attribute 28, 1 4 .eabi_attribute 20, 1 5 .eabi_attribute 21, 1 6 .eabi_attribute 23, 3 7 .eabi_attribute 24, 1 8 .eabi_attribute 25, 1 9 .eabi_attribute 26, 1 10 .eabi_attribute 30, 2 11 .eabi_attribute 34, 1 12 .eabi_attribute 18, 4 13 .file "usbd_desc.c" 14 .text 15 .section .text.USBD_CDC_DeviceDescriptor,"ax",%progbits 16 .align 1 17 .p2align 2,,3 18 .global USBD_CDC_DeviceDescriptor 19 .arch armv7e-m 20 .syntax unified 21 .thumb 22 .thumb_func 23 .fpu fpv4-sp-d16 25 USBD_CDC_DeviceDescriptor: 26 @ args = 0, pretend = 0, frame = 0 27 @ frame_needed = 0, uses_anonymous_args = 0 28 @ link register save eliminated. 29 0000 1223 movs r3, #18 30 0002 0148 ldr r0, .L3 31 0004 0B80 strh r3, [r1] @ movhi 32 0006 7047 bx lr 33 .L4: 34 .align 2 35 .L3: 36 0008 00000000 .word .LANCHOR0 38 .section .text.USBD_CDC_LangIDStrDescriptor,"ax",%progbits 39 .align 1 40 .p2align 2,,3 41 .global USBD_CDC_LangIDStrDescriptor 42 .syntax unified 43 .thumb 44 .thumb_func 45 .fpu fpv4-sp-d16 47 USBD_CDC_LangIDStrDescriptor: 48 @ args = 0, pretend = 0, frame = 0 49 @ frame_needed = 0, uses_anonymous_args = 0 50 @ link register save eliminated. 51 0000 0423 movs r3, #4 52 0002 0148 ldr r0, .L6 53 0004 0B80 strh r3, [r1] @ movhi 54 0006 7047 bx lr 55 .L7: 56 .align 2 57 .L6: 58 0008 00000000 .word .LANCHOR1 60 .section .rodata.USBD_CDC_ManufacturerStrDescriptor.str1.4,"aMS",%progbits,1 61 .align 2 ARM GAS /tmp/ccVdKlK4.s page 2 62 .LC0: 63 0000 53544D69 .ascii "STMicroelectronics\000" 63 63726F65 63 6C656374 63 726F6E69 63 637300 64 .section .text.USBD_CDC_ManufacturerStrDescriptor,"ax",%progbits 65 .align 1 66 .p2align 2,,3 67 .global USBD_CDC_ManufacturerStrDescriptor 68 .syntax unified 69 .thumb 70 .thumb_func 71 .fpu fpv4-sp-d16 73 USBD_CDC_ManufacturerStrDescriptor: 74 @ args = 0, pretend = 0, frame = 0 75 @ frame_needed = 0, uses_anonymous_args = 0 76 0000 10B5 push {r4, lr} 77 0002 044C ldr r4, .L10 78 0004 0448 ldr r0, .L10+4 79 0006 0A46 mov r2, r1 80 0008 2146 mov r1, r4 81 000a FFF7FEFF bl USBD_GetString 82 000e 2046 mov r0, r4 83 0010 10BD pop {r4, pc} 84 .L11: 85 0012 00BF .align 2 86 .L10: 87 0014 00000000 .word .LANCHOR2 88 0018 00000000 .word .LC0 90 .section .rodata.USBD_CDC_ProductStrDescriptor.str1.4,"aMS",%progbits,1 91 .align 2 92 .LC1: 93 0000 53544D33 .ascii "STM32 Virtual ComPort\000" 93 32205669 93 72747561 93 6C20436F 93 6D506F72 94 .section .text.USBD_CDC_ProductStrDescriptor,"ax",%progbits 95 .align 1 96 .p2align 2,,3 97 .global USBD_CDC_ProductStrDescriptor 98 .syntax unified 99 .thumb 100 .thumb_func 101 .fpu fpv4-sp-d16 103 USBD_CDC_ProductStrDescriptor: 104 @ args = 0, pretend = 0, frame = 0 105 @ frame_needed = 0, uses_anonymous_args = 0 106 0000 10B5 push {r4, lr} 107 0002 044C ldr r4, .L14 108 0004 0448 ldr r0, .L14+4 109 0006 0A46 mov r2, r1 110 0008 2146 mov r1, r4 111 000a FFF7FEFF bl USBD_GetString 112 000e 2046 mov r0, r4 113 0010 10BD pop {r4, pc} ARM GAS /tmp/ccVdKlK4.s page 3 114 .L15: 115 0012 00BF .align 2 116 .L14: 117 0014 00000000 .word .LANCHOR2 118 0018 00000000 .word .LC1 120 .section .rodata.USBD_CDC_ConfigStrDescriptor.str1.4,"aMS",%progbits,1 121 .align 2 122 .LC2: 123 0000 43444320 .ascii "CDC Config\000" 123 436F6E66 123 696700 124 .section .text.USBD_CDC_ConfigStrDescriptor,"ax",%progbits 125 .align 1 126 .p2align 2,,3 127 .global USBD_CDC_ConfigStrDescriptor 128 .syntax unified 129 .thumb 130 .thumb_func 131 .fpu fpv4-sp-d16 133 USBD_CDC_ConfigStrDescriptor: 134 @ args = 0, pretend = 0, frame = 0 135 @ frame_needed = 0, uses_anonymous_args = 0 136 0000 10B5 push {r4, lr} 137 0002 044C ldr r4, .L18 138 0004 0448 ldr r0, .L18+4 139 0006 0A46 mov r2, r1 140 0008 2146 mov r1, r4 141 000a FFF7FEFF bl USBD_GetString 142 000e 2046 mov r0, r4 143 0010 10BD pop {r4, pc} 144 .L19: 145 0012 00BF .align 2 146 .L18: 147 0014 00000000 .word .LANCHOR2 148 0018 00000000 .word .LC2 150 .section .rodata.USBD_CDC_InterfaceStrDescriptor.str1.4,"aMS",%progbits,1 151 .align 2 152 .LC3: 153 0000 43444320 .ascii "CDC Interface\000" 153 496E7465 153 72666163 153 6500 154 .section .text.USBD_CDC_InterfaceStrDescriptor,"ax",%progbits 155 .align 1 156 .p2align 2,,3 157 .global USBD_CDC_InterfaceStrDescriptor 158 .syntax unified 159 .thumb 160 .thumb_func 161 .fpu fpv4-sp-d16 163 USBD_CDC_InterfaceStrDescriptor: 164 @ args = 0, pretend = 0, frame = 0 165 @ frame_needed = 0, uses_anonymous_args = 0 166 0000 10B5 push {r4, lr} 167 0002 044C ldr r4, .L22 168 0004 0448 ldr r0, .L22+4 169 0006 0A46 mov r2, r1 ARM GAS /tmp/ccVdKlK4.s page 4 170 0008 2146 mov r1, r4 171 000a FFF7FEFF bl USBD_GetString 172 000e 2046 mov r0, r4 173 0010 10BD pop {r4, pc} 174 .L23: 175 0012 00BF .align 2 176 .L22: 177 0014 00000000 .word .LANCHOR2 178 0018 00000000 .word .LC3 180 .section .text.USBD_CDC_SerialStrDescriptor,"ax",%progbits 181 .align 1 182 .p2align 2,,3 183 .global USBD_CDC_SerialStrDescriptor 184 .syntax unified 185 .thumb 186 .thumb_func 187 .fpu fpv4-sp-d16 189 USBD_CDC_SerialStrDescriptor: 190 @ args = 0, pretend = 0, frame = 0 191 @ frame_needed = 0, uses_anonymous_args = 0 192 @ link register save eliminated. 193 0000 454A ldr r2, .L53 194 0002 D2F89005 ldr r0, [r2, #1424] 195 0006 D2F89835 ldr r3, [r2, #1432] 196 000a 4FF01A0C mov ip, #26 197 000e C318 adds r3, r0, r3 198 0010 A1F800C0 strh ip, [r1] @ movhi 199 0014 01D1 bne .L52 200 0016 4148 ldr r0, .L53+4 201 0018 7047 bx lr 202 .L52: 203 001a D2F89415 ldr r1, [r2, #1428] 204 001e 3F4A ldr r2, .L53+4 205 0020 180F lsrs r0, r3, #28 206 0022 B3F1204F cmp r3, #-1610612736 207 0026 2CBF ite cs 208 0028 3730 addcs r0, r0, #55 209 002a 3030 addcc r0, r0, #48 210 002c 9070 strb r0, [r2, #2] 211 002e C3F30360 ubfx r0, r3, #24, #4 212 0032 0928 cmp r0, #9 213 0034 8CBF ite hi 214 0036 3730 addhi r0, r0, #55 215 0038 3030 addls r0, r0, #48 216 003a 1071 strb r0, [r2, #4] 217 003c C3F30350 ubfx r0, r3, #20, #4 218 0040 0928 cmp r0, #9 219 0042 8CBF ite hi 220 0044 3730 addhi r0, r0, #55 221 0046 3030 addls r0, r0, #48 222 0048 9071 strb r0, [r2, #6] 223 004a C3F30340 ubfx r0, r3, #16, #4 224 004e 0928 cmp r0, #9 225 0050 8CBF ite hi 226 0052 3730 addhi r0, r0, #55 227 0054 3030 addls r0, r0, #48 228 0056 1072 strb r0, [r2, #8] ARM GAS /tmp/ccVdKlK4.s page 5 229 0058 C3F30330 ubfx r0, r3, #12, #4 230 005c 0928 cmp r0, #9 231 005e 8CBF ite hi 232 0060 3730 addhi r0, r0, #55 233 0062 3030 addls r0, r0, #48 234 0064 9072 strb r0, [r2, #10] 235 0066 C3F30320 ubfx r0, r3, #8, #4 236 006a 0928 cmp r0, #9 237 006c 8CBF ite hi 238 006e 3730 addhi r0, r0, #55 239 0070 3030 addls r0, r0, #48 240 0072 1073 strb r0, [r2, #12] 241 0074 C3F30310 ubfx r0, r3, #4, #4 242 0078 0928 cmp r0, #9 243 007a 03F00F03 and r3, r3, #15 244 007e 8CBF ite hi 245 0080 3730 addhi r0, r0, #55 246 0082 3030 addls r0, r0, #48 247 0084 092B cmp r3, #9 248 0086 94BF ite ls 249 0088 3033 addls r3, r3, #48 250 008a 3733 addhi r3, r3, #55 251 008c 1374 strb r3, [r2, #16] 252 008e 0023 movs r3, #0 253 0090 B1F1204F cmp r1, #-1610612736 254 0094 5374 strb r3, [r2, #17] 255 0096 4FEA1173 lsr r3, r1, #28 256 009a 2CBF ite cs 257 009c 3733 addcs r3, r3, #55 258 009e 3033 addcc r3, r3, #48 259 00a0 9374 strb r3, [r2, #18] 260 00a2 C1F30363 ubfx r3, r1, #24, #4 261 00a6 092B cmp r3, #9 262 00a8 8CBF ite hi 263 00aa 3733 addhi r3, r3, #55 264 00ac 3033 addls r3, r3, #48 265 00ae 1375 strb r3, [r2, #20] 266 00b0 C1F30353 ubfx r3, r1, #20, #4 267 00b4 092B cmp r3, #9 268 00b6 4FF0000C mov ip, #0 269 00ba 8CBF ite hi 270 00bc 3733 addhi r3, r3, #55 271 00be 3033 addls r3, r3, #48 272 00c0 82F803C0 strb ip, [r2, #3] 273 00c4 4FF0000C mov ip, #0 274 00c8 82F805C0 strb ip, [r2, #5] 275 00cc 9073 strb r0, [r2, #14] 276 00ce 4FF0000C mov ip, #0 277 00d2 0020 movs r0, #0 278 00d4 9375 strb r3, [r2, #22] 279 00d6 C1F30343 ubfx r3, r1, #16, #4 280 00da 092B cmp r3, #9 281 00dc 82F807C0 strb ip, [r2, #7] 282 00e0 D073 strb r0, [r2, #15] 283 00e2 4FF0000C mov ip, #0 284 00e6 4FF00000 mov r0, #0 285 00ea 94BF ite ls ARM GAS /tmp/ccVdKlK4.s page 6 286 00ec 3033 addls r3, r3, #48 287 00ee 3733 addhi r3, r3, #55 288 00f0 82F809C0 strb ip, [r2, #9] 289 00f4 D074 strb r0, [r2, #19] 290 00f6 4FF0000C mov ip, #0 291 00fa 0020 movs r0, #0 292 00fc 82F80BC0 strb ip, [r2, #11] 293 0100 5075 strb r0, [r2, #21] 294 0102 4FF0000C mov ip, #0 295 0106 0020 movs r0, #0 296 0108 1376 strb r3, [r2, #24] 297 010a 0023 movs r3, #0 298 010c D075 strb r0, [r2, #23] 299 010e 82F80DC0 strb ip, [r2, #13] 300 0112 0248 ldr r0, .L53+4 301 0114 5376 strb r3, [r2, #25] 302 0116 7047 bx lr 303 .L54: 304 .align 2 305 .L53: 306 0118 0070FF1F .word 536834048 307 011c 00000000 .word .LANCHOR3 309 .global USBD_StringSerial 310 .global USBD_StrDesc 311 .global USBD_LangIDDesc 312 .global USBD_CDC_DeviceDesc 313 .global CDC_Desc 314 .section .bss.USBD_StrDesc,"aw",%nobits 315 .align 2 316 .set .LANCHOR2,. + 0 319 USBD_StrDesc: 320 0000 00000000 .space 512 320 00000000 320 00000000 320 00000000 320 00000000 321 .section .data.CDC_Desc,"aw" 322 .align 2 325 CDC_Desc: 326 0000 00000000 .word USBD_CDC_DeviceDescriptor 327 0004 00000000 .word USBD_CDC_LangIDStrDescriptor 328 0008 00000000 .word USBD_CDC_ManufacturerStrDescriptor 329 000c 00000000 .word USBD_CDC_ProductStrDescriptor 330 0010 00000000 .word USBD_CDC_SerialStrDescriptor 331 0014 00000000 .word USBD_CDC_ConfigStrDescriptor 332 0018 00000000 .word USBD_CDC_InterfaceStrDescriptor 333 001c 00000000 .space 4 334 .section .data.USBD_CDC_DeviceDesc,"aw" 335 .align 2 336 .set .LANCHOR0,. + 0 339 USBD_CDC_DeviceDesc: 340 0000 12010002 .ascii "\022\001\000\002\002\002\000@\203\004@W\000\002\001" 340 02020040 340 83044057 340 000201 341 000f 020301 .ascii "\002\003\001" 342 .section .data.USBD_LangIDDesc,"aw" ARM GAS /tmp/ccVdKlK4.s page 7 343 .align 2 344 .set .LANCHOR1,. + 0 347 USBD_LangIDDesc: 348 0000 04030904 .ascii "\004\003\011\004" 349 .section .data.USBD_StringSerial,"aw" 350 .align 2 351 .set .LANCHOR3,. + 0 354 USBD_StringSerial: 355 0000 1A0300 .ascii "\032\003\000" 356 0003 00000000 .space 23 356 00000000 356 00000000 356 00000000 356 00000000 357 .ident "GCC: (15:10.3-2021.07-4) 10.3.1 20210621 (release)" ARM GAS /tmp/ccVdKlK4.s page 8 DEFINED SYMBOLS *ABS*:0000000000000000 usbd_desc.c /tmp/ccVdKlK4.s:16 .text.USBD_CDC_DeviceDescriptor:0000000000000000 $t /tmp/ccVdKlK4.s:25 .text.USBD_CDC_DeviceDescriptor:0000000000000000 USBD_CDC_DeviceDescriptor /tmp/ccVdKlK4.s:36 .text.USBD_CDC_DeviceDescriptor:0000000000000008 $d /tmp/ccVdKlK4.s:39 .text.USBD_CDC_LangIDStrDescriptor:0000000000000000 $t /tmp/ccVdKlK4.s:47 .text.USBD_CDC_LangIDStrDescriptor:0000000000000000 USBD_CDC_LangIDStrDescriptor /tmp/ccVdKlK4.s:58 .text.USBD_CDC_LangIDStrDescriptor:0000000000000008 $d /tmp/ccVdKlK4.s:61 .rodata.USBD_CDC_ManufacturerStrDescriptor.str1.4:0000000000000000 $d /tmp/ccVdKlK4.s:65 .text.USBD_CDC_ManufacturerStrDescriptor:0000000000000000 $t /tmp/ccVdKlK4.s:73 .text.USBD_CDC_ManufacturerStrDescriptor:0000000000000000 USBD_CDC_ManufacturerStrDescriptor /tmp/ccVdKlK4.s:87 .text.USBD_CDC_ManufacturerStrDescriptor:0000000000000014 $d /tmp/ccVdKlK4.s:91 .rodata.USBD_CDC_ProductStrDescriptor.str1.4:0000000000000000 $d /tmp/ccVdKlK4.s:95 .text.USBD_CDC_ProductStrDescriptor:0000000000000000 $t /tmp/ccVdKlK4.s:103 .text.USBD_CDC_ProductStrDescriptor:0000000000000000 USBD_CDC_ProductStrDescriptor /tmp/ccVdKlK4.s:117 .text.USBD_CDC_ProductStrDescriptor:0000000000000014 $d /tmp/ccVdKlK4.s:121 .rodata.USBD_CDC_ConfigStrDescriptor.str1.4:0000000000000000 $d /tmp/ccVdKlK4.s:125 .text.USBD_CDC_ConfigStrDescriptor:0000000000000000 $t /tmp/ccVdKlK4.s:133 .text.USBD_CDC_ConfigStrDescriptor:0000000000000000 USBD_CDC_ConfigStrDescriptor /tmp/ccVdKlK4.s:147 .text.USBD_CDC_ConfigStrDescriptor:0000000000000014 $d /tmp/ccVdKlK4.s:151 .rodata.USBD_CDC_InterfaceStrDescriptor.str1.4:0000000000000000 $d /tmp/ccVdKlK4.s:155 .text.USBD_CDC_InterfaceStrDescriptor:0000000000000000 $t /tmp/ccVdKlK4.s:163 .text.USBD_CDC_InterfaceStrDescriptor:0000000000000000 USBD_CDC_InterfaceStrDescriptor /tmp/ccVdKlK4.s:177 .text.USBD_CDC_InterfaceStrDescriptor:0000000000000014 $d /tmp/ccVdKlK4.s:181 .text.USBD_CDC_SerialStrDescriptor:0000000000000000 $t /tmp/ccVdKlK4.s:189 .text.USBD_CDC_SerialStrDescriptor:0000000000000000 USBD_CDC_SerialStrDescriptor /tmp/ccVdKlK4.s:306 .text.USBD_CDC_SerialStrDescriptor:0000000000000118 $d /tmp/ccVdKlK4.s:354 .data.USBD_StringSerial:0000000000000000 USBD_StringSerial /tmp/ccVdKlK4.s:319 .bss.USBD_StrDesc:0000000000000000 USBD_StrDesc /tmp/ccVdKlK4.s:347 .data.USBD_LangIDDesc:0000000000000000 USBD_LangIDDesc /tmp/ccVdKlK4.s:339 .data.USBD_CDC_DeviceDesc:0000000000000000 USBD_CDC_DeviceDesc /tmp/ccVdKlK4.s:325 .data.CDC_Desc:0000000000000000 CDC_Desc /tmp/ccVdKlK4.s:315 .bss.USBD_StrDesc:0000000000000000 $d /tmp/ccVdKlK4.s:322 .data.CDC_Desc:0000000000000000 $d /tmp/ccVdKlK4.s:335 .data.USBD_CDC_DeviceDesc:0000000000000000 $d /tmp/ccVdKlK4.s:343 .data.USBD_LangIDDesc:0000000000000000 $d /tmp/ccVdKlK4.s:350 .data.USBD_StringSerial:0000000000000000 $d UNDEFINED SYMBOLS USBD_GetString