Ich versuche, ein einfaches RTOS, das für arm926ejs geschrieben wurde, in Arm-Cortex-A9 zu portieren. Während der Kontextschalter Bezug genommen wird, stieß ich auf die folgenden Anweisungen,STR- und LDR-Anweisung in ARM-Assembly
_userIntrStackPtr:
.word 0x0
STR sp,_userIntrStackPtr
LDR r0,__userStackPtr2Ptr
Aber, wenn ich versuche, den Code zu kompilieren, ich den Fehler
Error: internal_relocation (type: OFFSET_IMM) not fixed up
Kann jemand bitte die oben Anweisung erklären? Auch als ich andere Codes bezog, sah ich ähnliche Anweisungen wie,
LDR r0,=__userStackPtr2Ptr
Was ist der Unterschied zwischen diesen beiden Methoden? Wie kann ich diese Etiketten mit dem Befehl str und ldr verwenden? Ich bin nicht gut mit der Montage. Bitte helfen Sie ..
Danke für die Antwort Spaßvogel. Ich habe die Abschnitte geändert und jetzt ist der Fehler weg. Obwohl alles in den Textbereich des Linkers gehörte, war einer in .text und der Rest in .text.vectors. Ich habe jetzt beide auf .text und seine Zusammenstellung geändert. Ich habe die Arbeit nicht getestet, aber der Fehler ist weg. – Ajeesh