PPC assembler befehl für laden von GPR

Gast #2847379
Lesenswert?

ok danke das funktioniert.

ich will eigentlich eine C funktion (fcn1) aus einem assembler code 
aufrufen.

                .extern fcn1
fcn2:
                 # save register hier
                 ...

          # call the C extern funktion: dies funktioniert auch gut
    bl fcn1

    li 11, 0
    addi 11, 11, fcn1
    mtspr 9, 11
    bcctrl 0x0,0,0

    #resave the register hier
    ...
    ...
    # und return
    blr

ich bekomme die Fehlermeldung beim compilieren/assemblieren:
 " unsupported relocation against fcn1"
Hat Jemand eine Idee wie man das lösen kann? Ich möchte den instruction 
"bcctrl" damit ich mit dem Count Reigister branchen kann und nicht 
relative branch mit dem "bl"

Danke
Gast #2859307
Lesenswert?

warrun macht man eigentlich die teilung (high/low)?
gibts in ppc kein Befehl um eine 32bit konstante in Register zu laden?

sowie hier z.B. (die gibt aber eine compiler fehler "unsupported 
relocation against FUNC_ADDR")

.equ FUNC_ADDR  0x10000
lis  r3,FUNC_ADDR


Danke

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren