mirror of
https://github.com/cirosantilli/linux-kernel-module-cheat.git
synced 2026-01-23 02:05:57 +01:00
The update is required to include 3c3ca64b5f0dd9eef7b1ce1c65cc6e8e9147dd38 otherwise baremetal does not on VExpress. baremetal: create a baremetal setup with crosstool-ng buildroot: improve directory location: move out/dl inside out/buildroot/download, and add a new out/buildroot/build level tagline: generalize, deliver more value than howto, since now howtos are starting to multiply rename all top scripts to separate words with hyphen more consistently, e.g. run-gdb instead of rungdb getvar: list all variables gem5: make m5out section to focus all releated information at Prevent m5term Text file busy when rebuilding gem5 while it is running.
20 lines
448 B
ArmAsm
20 lines
448 B
ArmAsm
/* assert 0x12345678 + 1 == 0x12345679 */
|
|
.global main
|
|
main:
|
|
movw r0, #:lower16:myvar
|
|
movt r0, #:upper16:myvar
|
|
ldr r1, [r0]
|
|
add r1, r1, #1
|
|
str r1, [r0]
|
|
movw r2, #0x5679
|
|
movt r2, #0x1234
|
|
cmp r1, r2
|
|
beq ok
|
|
# m5 fail 1
|
|
mov r0, #0; mov r1, #0; mov r2, #1; mov r3, #0; .inst 0xEE000110 | (0x22 << 16);
|
|
ok:
|
|
# m5 exit
|
|
mov r0, #0; mov r1, #0; .inst 0xEE000110 | (0x21 << 16);
|
|
myvar:
|
|
.word 0x12345678
|