1 .syntax unified 2 .cpu cortex-m4 3 .fpu fpv4-sp-d16 4 .text 5 .align 1 6 .thumb 7 .thumb_func 8 .global _start 9_start: 10 @ VLDM CASE #1 11 @ vldm rx, {...} 12 @ -> vldm rx!, {8_words_or_less} for each 13 @ -> sub rx, rx, #size (list) 14 vldm r9, {s1-s31} 15 16 @ VLDM CASE #2 17 @ vldm rx!, {...} 18 @ -> vldm rx!, {8_words_or_less} for each needed 8_word 19 @ This also handles vpop instruction (when rx is sp) 20 vldm r6!, {s9-s29} 21 @ Explicit VPOP test 22 vpop {s1-s9} 23 24 @ VLDM CASE #3 25 @ vldmd rx!, {...} 26 @ -> vldmb rx!, {8_words_or_less} for each needed 8_word 27 vldmdb r11!, {s1-s31} 28