Hi,
I am observing a bootstrap failure for the avr target that seems to be related
to the patch
2005-05-19 Jan Hubicka <[EMAIL PROTECTED]>
...
* basic-block.h (REG_BR_PROB_BASE): Define.
...
* rtl.h (REG_BR_PROB_BASE): Kill.
. Bootstrap using the switches
configure --target=avr --with-dwarf2 --enable-languages="c,c++" --disable-nls
failed with the error message
gcc -g -O2 -DIN_GCC -DCROSS_COMPILE -W -Wall -Wwrite-strings
-Wstrict-prototypes -Wmissing-prototypes -fno-common -DHAVE_CONFIG_H
-I. -I. -I../../gcc/gcc -I../../gcc/gcc/. -I../../gcc/gcc/../include
-I../../gcc/gcc/../libcpp/include -c insn-emit.c \
-o insn-emit.o
../../gcc/gcc/config/avr/avr.md: In function `gen_movmemhi':
../../gcc/gcc/config/avr/avr.md:380: error: `REG_BR_PROB_BASE' undeclared
(first use in this function)
../../gcc/gcc/config/avr/avr.md:380: error: (Each undeclared identifier is
reported only once
../../gcc/gcc/config/avr/avr.md:380: error: for each function it appears in.)
make[1]: *** [insn-emit.o] Fehler 1
make[1]: Leaving directory `/home/bmh/gnucvs/cleanhead/build/gcc'
make: *** [all-gcc] Fehler 2
The code causing the problems is enclosed in the prepration statements of a
define_expand pattern:
(define_expand "movmemhi"
[(parallel [(set (match_operand:BLK 0 "memory_operand" "")
(match_operand:BLK 1 "memory_operand" ""))
(use (match_operand:HI 2 "const_int_operand" ""))
(use (match_operand:HI 3 "const_int_operand" ""))])]
""
"{
...
/* Work out branch probability for latter use. */
prob = REG_BR_PROB_BASE - REG_BR_PROB_BASE / count;
Since the missing macros seem to have moved from rtl.h to basic-block.h, I'd
like to know at which place one would need gcc make include the additional
header. IIUC, instruction-emit.c is the machine-generated source file that is
generated by the machine-description parsers.
Simply adding basic-block.h to the include list of the generated emit-insn.c
does not solve the problem but causes follow-up failures.
I'd appreciate help.
Yours,
Bj�rn