gcc-4.3.0 build problem
DSS
rajivkumarsingla@gmail.com
Mon Dec 14 06:37:00 GMT 2009
sorry gcc-help,
I made a very silly mistake in my md due which that error is coming. At one
time i am uses cases in preparation statements and i had written 'if'
instead of switch to switch between the cases. Sorry for wasting anyone's
value able time.
DSS wrote:
>
> Hi,
>
> I got a problem while building gcc-4.3.0 after putting "movdi" pattern in
> my md file. Error is like this
>
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:2045: error: extra
> brace group at end of initializer
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:2045: error: (near
> initialization for ‘insn_data[14]’)
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:2048: error: extra
> brace group at end of initializer
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:2048: error: (near
> initialization for ‘insn_data[14]’)
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:2058: warning:
> excess elements in struct initializer
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:2058: warning:
> (near initialization for ‘insn_data[14]’)
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:2060: error: extra
> brace group at end of initializer
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:2060: error: (near
> initialization for ‘insn_data[14]’)
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:2063: error: extra
> brace group at end of initializer
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:2063: error: (near
> initialization for ‘insn_data[14]’)
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:2073: warning:
> excess elements in struct initializer
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:2073: warning:
> (near initialization for ‘insn_data[14]’)
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:2075: error: extra
> brace group at end of initializer
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:2075: error: (near
> initialization for ‘insn_data[14]’)
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:2078: error: extra
> brace group at end of initializer
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:2078: error: (near
> initialization for ‘insn_data[14]’)
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:2088: warning:
> excess elements in struct initializer
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:2088: warning:
> (near initialization for ‘insn_data[14]’)
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:2090: error: extra
> brace group at end of initializer
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:2090: error: (near
> initialization for ‘insn_data[14]’)
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:2093: error: extra
> brace group at end of initializer
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:2093: error: (near
> initialization for ‘insn_data[14]’)
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:2103: warning:
> excess elements in struct initializer
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:2103: warning:
> (near initialization for ‘insn_data[14]’)
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:2105: error: extra
> brace group at end of initializer
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:2105: error: (near
> initialization for ‘insn_data[14]’)
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:2108: error: extra
> brace group at end of initializer
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:2108: error: (near
> initialization for ‘insn_data[14]’)
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:2124: warning:
> excess elements in struct initializer
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:2124: warning:
> (near initialization for ‘insn_data[14]’)
> .
> .
> .
> .
> .
> .
> .
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:3284: error: extra
> brace group at end of initializer
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:3284: error: (near
> initialization for ‘insn_data[14]’)
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:3294: warning:
> excess elements in struct initializer
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:3294: warning:
> (near initialization for ‘insn_data[14]’)
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:3296: error: extra
> brace group at end of initializer
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:3296: error: (near
> initialization for ‘insn_data[14]’)
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:3299: error: extra
> brace group at end of initializer
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:3299: error: (near
> initialization for ‘insn_data[14]’)
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:3309: warning:
> excess elements in struct initializer
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:3309: warning:
> (near initialization for ‘insn_data[14]’)
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:3310: warning:
> missing initializer
> /root/prerequisties/gcc-4.3.0/gcc/config/trial/trial.md:3310: warning:
> (near initialization for ‘insn_data[14].n_operands’)
> make[2]: *** [insn-output.o] Error 1
> make[2]: Leaving directory `/root/build/gcc'
> make[1]: *** [all-gcc] Error 2
> make[1]: Leaving directory `/root/build'
> make: *** [all] Error 2
>
>
> Please help me in this.
>
> My movdi pattern is like this.
> (define_expand "movdi"
> [(set (match_operand:DI 0 "general_operand" "")
> (match_operand:DI 1 "general_operand" ""))]
> ""
> "
> if(GET_CODE(operands[0])==MEM && GET_CODE(operands[1])!=REG)
> {
> if(can_create_pseudo_p())
> {
> operands[1]=force_reg(DImode,operands[1]);
> }
> }
> "
> )
> (define_insn_and_split "*movdi"
> [(set(match_operand: DI 0 "nonimmediate_operand" "=r,r")
> (match_operand: DI 1 "general_operand" "r,i"))]
>
> "(register_operand (operands[0], DImode)
> || register_operand (operands[1], DImode))"
>
> "if(which_alternative)
> {
> case 0:
> case 1: return \"#\";
> }"
> ""
> [(set (match_dup 0)(match_dup 1))
> (set (match_dup 2)(match_dup 3))]
> "{
> operands[2] = gen_highpart (SImode, operands[0]);
> operands[0] = gen_lowpart (SImode, operands[0]);
> operands[3] = gen_highpart (SImode, operands[1]);
> operands[1] = gen_lowpart (SImode, operands[1]);
> }"
> )
>
>
--
View this message in context: http://old.nabble.com/gcc-4.3.0-build-problem-tp26773228p26773518.html
Sent from the gcc - Help mailing list archive at Nabble.com.
More information about the Gcc-help
mailing list