unable to find a register to spill in class 'POINTER_REGS'

Gast #646792
Lesenswert?

Hallo,

ich bekomme folgende Fehlermeldung. Welhe ich zum ersten mal sehe.
Compiling C: fscontroll.c
avr-gcc -c -mmcu=atmega1280 -I. -gdwarf-2 -DF_CPU=16000000UL  -DGERMAN 
-O3 -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums 
-Wall -Wstrict-prototypes -Wundef -Wa,-adhlns=obj/fscontroll.lst 
-std=gnu99 -Wundef -MD -MP -MF .dep/fscontroll.o.d fscontroll.c -o 
obj/fscontroll.o
fscontroll.c: In function 'meas_sensors':
fscontroll.c:685: error: unable to find a register to spill in class 
'POINTER_REGS'
fscontroll.c:685: error: this is the insn:
(insn 416 414 417 36 fscontroll.c:627 (set (reg:SF 46 [ D.1966 ])
        (mem/s:SF (post_inc:HI (reg/v/f:HI 14 r14 [orig:63 adc ] [63])) 
[6 <variable>.float_ch+4 S4 A8])) 15 {*movsf} (insn_list:REG_DEP_TRUE 
415 (nil))
    (expr_list:REG_INC (reg/v/f:HI 14 r14 [orig:63 adc ] [63])
        (nil)))
fscontroll.c:685: confused by earlier errors, bailing out
make.exe : *** [obj/fscontroll.o] Error 1

Was bedeutet diese Fehlermeldung.
Dies entsteht durch folgedne Zeilen:
1
sensor->pressurereservend=sensor->mreserve*adc->float_ch[0]+sensor->breserve;
2
 sensor->pressurereservehpleft=MPRESERVELEFT*adc->float_ch[1]+BPRESERVELEFT;
3
 sensor->pressurereservehpright=MPRESERVERIGHT*adc->float_ch[2]+BPRESERVERIGHT;
4
 sensor->pressuresystem=sensor->msystem*adc->float_ch[3]+sensor->bsystem;
5
 sensor->pressureafterfilter=sensor->mfilter*adc->ch[4]+sensor->bfilter;
1
Durch umsoriteren der Zeilen verschwindet der Fehler.
2
 sensor->pressureafterfilter=sensor->mfilter*adc->ch[4]+sensor->bfilter;
3
 sensor->pressurereservend=sensor->mreserve*adc->float_ch[0]+sensor->breserve;
4
 sensor->pressurereservehpleft=MPRESERVELEFT*adc->float_ch[1]+BPRESERVELEFT;
5
 sensor->pressurereservehpright=MPRESERVERIGHT*adc->float_ch[2]+BPRESERVERIGHT;
6
 sensor->pressuresystem=sensor->msystem*adc->float_ch[3]+sensor->bsystem;

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