Mieszanie instrukcji ARM i THUMB
Próbuję mieszać instrukcje ARM i THUMB w moim kodzie zespołu. Na przykład w poniższym kodzie próbuję użyć obu trybów:
.thumb @ .code 16
.section __TEXT,__text
.globl mySymbol1
mySymbol1:
....
.arm @ .code 32
.section __TEXT,__text
.globl mySymbol2
mySymbol2:
...
Teraz, zgodnie z moim zrozumieniem, gdy kompiluję ten kod do biblioteki i uruchamiam go przez nm,mysymbol1
powinien pojawić się jako ramię imysymbol2
powinien pojawić się jako kciuk, tj.
0000xxxx (__TEXT,__text) external mySymbol1
0000yyyy (__TEXT,__text) external [Thumb] mySymbol2
Ale obie pojawiają się jako ramię. Czego mi tu brakuje? Moje polecenie asemblera to:
as -arch armv7 -o a.o a.s