public inbox for gcc-help@gcc.gnu.org
 help / color / mirror / Atom feed
* gcc-4.3.0 build problem
@ 2009-12-14  6:28 DSS
  2009-12-14  6:37 ` DSS
  0 siblings, 1 reply; 2+ messages in thread
From: DSS @ 2009-12-14  6:28 UTC (permalink / raw)
  To: gcc-help


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-tp26773228p26773228.html
Sent from the gcc - Help mailing list archive at Nabble.com.

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: gcc-4.3.0 build problem
  2009-12-14  6:28 gcc-4.3.0 build problem DSS
@ 2009-12-14  6:37 ` DSS
  0 siblings, 0 replies; 2+ messages in thread
From: DSS @ 2009-12-14  6:37 UTC (permalink / raw)
  To: gcc-help


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.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2009-12-14  6:28 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-12-14  6:28 gcc-4.3.0 build problem DSS
2009-12-14  6:37 ` DSS

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).