J'essaie de porter un simple RTOS écrit pour arm926ejs afin d'armer le cortex-A9. Tout en se référant au changement de contexte, je suis tombé sur les instructions suivantes,Instruction STR et LDR dans l'assemblage ARM
_userIntrStackPtr:
.word 0x0
STR sp,_userIntrStackPtr
LDR r0,__userStackPtr2Ptr
Mais, quand je tente de compiler le code, je reçois l'erreur
Error: internal_relocation (type: OFFSET_IMM) not fixed up
Quelqu'un peut-il s'il vous plaît expliquer les instructions ci-dessus? Aussi quand j'ai référé d'autres codes, j'ai vu des instructions similaires comme,
LDR r0,=__userStackPtr2Ptr
Quelle est la différence entre ces deux méthodes? Comment puis-je utiliser ces étiquettes avec instruction str et ldr? Je ne suis pas bon avec l'assemblage. S'il vous plaît aider ..
Merci pour le jester de réponse. J'ai changé les sections et maintenant l'erreur est partie. Bien que tout appartenait à la section .text de l'éditeur de liens, l'un était en .text et le reste en .text.vectors. J'ai changé à la fois .text et sa compilation maintenant. Je n'ai pas testé le fonctionnement, mais l'erreur est partie. – Ajeesh