Skip to content

Instantly share code, notes, and snippets.

@ssvb
Last active May 9, 2016 20:45
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ssvb/5f68caade9c76fd671f68135a6d96643 to your computer and use it in GitHub Desktop.
Save ssvb/5f68caade9c76fd671f68135a6d96643 to your computer and use it in GitHub Desktop.
sunxi-tools 9e7f3a3a93290654c6a30a157484c46d37686d20
$ arm-linux-gnueabihf-gcc -v
Using built-in specs.
COLLECT_GCC=/usr/x86_64-pc-linux-gnu/arm-linux-gnueabihf/gcc-bin/4.7.4/arm-linux-gnueabihf-gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/arm-linux-gnueabihf/4.7.4/lto-wrapper
Target: arm-linux-gnueabihf
Configured with: /var/tmp/portage/cross-arm-linux-gnueabihf/gcc-4.7.4/work/gcc-4.7.4/configure --host=x86_64-pc-linux-gnu --target=arm-linux-gnueabihf --build=x86_64-pc-linux-gnu --prefix=/usr --bindir=/usr/x86_64-pc-linux-gnu/arm-linux-gnueabihf/gcc-bin/4.7.4 --includedir=/usr/lib/gcc/arm-linux-gnueabihf/4.7.4/include --datadir=/usr/share/gcc-data/arm-linux-gnueabihf/4.7.4 --mandir=/usr/share/gcc-data/arm-linux-gnueabihf/4.7.4/man --infodir=/usr/share/gcc-data/arm-linux-gnueabihf/4.7.4/info --with-gxx-include-dir=/usr/lib/gcc/arm-linux-gnueabihf/4.7.4/include/g++-v4 --with-python-dir=/share/gcc-data/arm-linux-gnueabihf/4.7.4/python --enable-languages=c,c++ --enable-obsolete --enable-secureplt --disable-werror --with-system-zlib --disable-nls --enable-checking=release --with-bugurl=https://bugs.gentoo.org/ --with-pkgversion='Gentoo 4.7.4 p1.4, pie-0.5.5' --enable-libstdcxx-time --enable-poison-system-directories --with-sysroot=/usr/arm-linux-gnueabihf --disable-bootstrap --enable-__cxa_atexit --enable-clocale=gnu --disable-multilib --disable-altivec --disable-fixed-point --with-float=hard --disable-libgcj --disable-libgomp --disable-libmudflap --disable-libssp --disable-libquadmath --enable-lto --without-cloog --without-ppl --with-cpu=cortex-a8 --with-float=hard
Thread model: posix
gcc version 4.7.4 (Gentoo 4.7.4 p1.4, pie-0.5.5)
======= the current pre-built binary (works fine) =====
/tmp/sunxi-tools/bin $ r2 -a arm fel-sdboot.sunxi
[0x00000000]> pd 20
,=< 0x00000000 060000ea b 0x20
| 0x00000004 65474f4e cdpmi p7, 4, c4, c15, c5, 3
| 0x00000008 2e425430 subslo r4, r4, lr, lsr 4
| 0x0000000c 2cc70742 andmi ip, r7, 0xb00000
| 0x00000010 00020000 andeq r0, r0, r0, lsl 4
| 0x00000014 00000000 andeq r0, r0, r0
| 0x00000018 00000000 andeq r0, r0, r0
| 0x0000001c 00000000 andeq r0, r0, r0
`-> 0x00000020 08402de9 push {r3, lr}
0x00000024 08309fe5 ldr r3, [pc, 8] ; [:4]=0xffff0020 ; '4'
0x00000028 0fe0a0e1 mov lr, pc
,==< 0x0000002c 13ff2fe1 bx r3
| 0x00000030 0880bde8 pop {r3, pc}
| 0x00000034 2000ffff invalid
| 0x00000038 00000000 andeq r0, r0, r0
| 0x0000003c 00000000 andeq r0, r0, r0
| 0x00000040 00000000 andeq r0, r0, r0
| 0x00000044 00000000 andeq r0, r0, r0
0x00000048 00000000 andeq r0, r0, r0
0x0000004c 00000000 andeq r0, r0, r0
===== compiled from sources using GCC 4.7.4 (THIS DOES NOT WORK CORRECTLY ON A10 and A20!!!) =====
/tmp/sunxi-tools $ r2 -a arm fel-sdboot.sunxi
sunxi-tools $ r2 -a arm fel-sdboot.sunxi
[0x00000000]> pd 20
,=< 0x00000000 060000ea b 0x20
| 0x00000004 65474f4e cdpmi p7, 4, c4, c15, c5, 3
| 0x00000008 2e425430 subslo r4, r4, lr, lsr 4
| 0x0000000c 8c55b361 invalid
| 0x00000010 00200000 andeq r2, r0, r0
| 0x00000014 53504c01 qdaddeq r5, r3, ip
| 0x00000018 00000000 andeq r0, r0, r0
| 0x0000001c 00000000 andeq r0, r0, r0
`-> 0x00000020 08402de9 push {r3, lr}
0x00000024 04309fe5 ldr r3, [pc, 4] ; [:4]=0xffff0020 ; '0'
0x00000028 33ff2fe1 blx r3
0x00000045()
0x0000002c 0880bde8 pop {r3, pc}
0x00000030 2000ffff invalid
0x00000034 00000000 andeq r0, r0, r0
0x00000038 00000000 andeq r0, r0, r0
0x0000003c 00000000 andeq r0, r0, r0
0x00000040 00000000 andeq r0, r0, r0
0x00000044 00000000 andeq r0, r0, r0
0x00000048 00000000 andeq r0, r0, r0
0x0000004c 00000000 andeq r0, r0, r0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment