From: bernds Date: Tue, 15 Dec 2015 14:34:01 +0000 (+0000) Subject: Fix PR21273 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=dfea92e17077428d1f38137b6e7fc732c584e696;p=thirdparty%2Fgcc.git Fix PR21273 PR middle-end/21273 * gensupport.c (collect_insn_data): Look for number of alternatives in MATCH_SCRATCH. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@231654 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ca50fba0f69e..69fe3a7273ef 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2015-12-15 Bernd Schmidt + + PR middle-end/21273 + * gensupport.c (collect_insn_data): Look for number of alternatives + in MATCH_SCRATCH. + 2015-12-15 Nathan Sidwell * config/nvptx/nvptx.h (HARD_REGNO_NREGS): Reformat. diff --git a/gcc/gensupport.c b/gcc/gensupport.c index 7969060c117f..e32f19950185 100644 --- a/gcc/gensupport.c +++ b/gcc/gensupport.c @@ -1068,12 +1068,12 @@ collect_insn_data (rtx pattern, int *palt, int *pmax) switch (code) { case MATCH_OPERAND: - i = n_alternatives (XSTR (pattern, 2)); + case MATCH_SCRATCH: + i = n_alternatives (XSTR (pattern, code == MATCH_SCRATCH ? 1 : 2)); *palt = (i > *palt ? i : *palt); /* Fall through. */ case MATCH_OPERATOR: - case MATCH_SCRATCH: case MATCH_PARALLEL: i = XINT (pattern, 0); if (i > *pmax)