GNUARM Fehlermeldung und Frage

Gast #873624
Lesenswert?
• ▲
▼
Hallo ,

ich stelle gerade ein Programm für den LPC2138/48 von einem
anderen C-Compiler auf GCC um.
Dabei gibt es folgende Probleme bei denen ich um Hilfe bitte:

1. Ich bekomme folgende Fehlermeldungen und weiss jetzt nicht
   wo ich nach was suchen muss.

GNU C version 4.2.2 (arm-elf)
compiled by GNU C version 3.4.4 (cygming special, gdc 0.12, using dmd 
0.125).
GGC heuristics: --param ggc-min-expand=100 --param 
ggc-min-heapsize=131072
Compiler executable checksum: aa6792d977dfcb1158cc7131e51a7a40
/cygdrive/c/Programme/GNUARM/bin/../lib/gcc/arm-elf/4.2.2/../../../../ar 
m-elf/bin/as.exe  -mcpu=arm7tdmi-s -mfloat-abi=soft -o HSPIMMC.o 
/cygdrive/c/temp/ccLYwsfL.s
/cygdrive/c/temp/ccLYwsfL.s: Assembler messages:
/cygdrive/c/temp/ccLYwsfL.s:499: Error: flag for {c}psr instruction 
expected -- `msr CPSR_C,#0xDF'
/cygdrive/c/temp/ccLYwsfL.s:505: Error: flag for {c}psr instruction 
expected -- `msr CPSR_C,#0x1F'
make: *** [HSPIMMC.o] Error 1

2. Ich möchte bestimmte Funktionen des Programms in bestimmte
   Flash Sektoren legen. Der ganze Sektor muss dann ausschliesslich
   für diese reserviert sein. Auch wenn er nicht voll ist
   dürfen keine anderen Funktionen den Bereich belegen.
   Wie macht man das bei GCC?

Vielen Dank.
#873751
Lesenswert?
• ▲
▼
1) Das sieht eher nach einem Problem mit dem Assembler aus als mit dem 
Compiler. Problem könnte sein, dass der Code Inline-Assembler enthält, 
der portiert werden muss.

2) In gcc legt man die Funktion in eine bestimmte Section mittels 
__attribute__((section ("name"))) oder falls es vom Backend unterstützt 
wird mit #pragma. Die Lage der Section wird per Lnker-Script dem Linker 
mitgegben.

Denkbar ist auch ein Bug in dieser doch recht neuen gcc/binutils 
Version, also auch mal die gcc-bugs für arm durchlesen.

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.