[linux-l] Gcc Binär iHex und wo es los geht

sukapx sukapx at gspons.net
Mo Jun 10 00:50:44 CEST 2013


Hallo Liste,

ich habe da mal ein "kleines" Problem.

Ich bastel derzeit einen CPU in VHDL, welcher das MIPS32 Instructionset 
versteht (für Interessierte: http://wiki.gspons.net/index.php/GSoC).

Der VHDL Teil läuft derzeit recht gut und es kommen auch schon die 
ersten Periferie Module hinzu.

Auf der Programmseite schaut es schwieriger.
Bisher hat es geklappt eine einfache Mainfunktion zu schreiben, 
assemblieren zu lassen (u den Ablauf im CPU nachverfogen zu können) und 
danach kompilieren zu lassen. Aktuell werden die Programme jedoch länger 
und ich brauche (dynamische) Funktionsaufrufe. Problematisch wird das 
daher, das der CPU immer bei PC 0 beginnt, die Resulatete aus dem Gcc 
aber nicht immer mit der Mainfunktion beginnen.

Daher stellen sich mir folgende Fragen/Probleme:
Was muss ich tun, damit die Mainfunktion immer bei PC = 0 beginnt
bzw.
Was muss ich tun, um die Addresse der Main eindeutig zu erhalten, um 
ggf. einen Jump zur Main vorweg zu setzen

Sollte die Antwort länger sein so bin ich auch gern bereit mir einen 
Abend frei zu nehmen und mich gelehrig bei einem Bier zu treffen.

Gruß Dominik



Mehr Informationen über die Mailingliste linux-l