Mercurial > hg > CbC > CbC_gcc
comparison gcc/gensupport.c @ 63:b7f97abdc517 gcc-4.6-20100522
update gcc from gcc-4.5.0 to gcc-4.6
author | ryoma <e075725@ie.u-ryukyu.ac.jp> |
---|---|
date | Mon, 24 May 2010 12:47:05 +0900 |
parents | 77e2b8dfacca |
children | f6334be47118 |
comparison
equal
deleted
inserted
replaced
56:3c8a44c06a95 | 63:b7f97abdc517 |
---|---|
1 /* Support routines for the various generation passes. | 1 /* Support routines for the various generation passes. |
2 Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 | 2 Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, |
3 Free Software Foundation, Inc. | 3 2010, Free Software Foundation, Inc. |
4 | 4 |
5 This file is part of GCC. | 5 This file is part of GCC. |
6 | 6 |
7 GCC is free software; you can redistribute it and/or modify it | 7 GCC is free software; you can redistribute it and/or modify it |
8 under the terms of the GNU General Public License as published by | 8 under the terms of the GNU General Public License as published by |
778 struct queue_elem *insn_elem; | 778 struct queue_elem *insn_elem; |
779 for (insn_elem = define_insn_queue; insn_elem ; insn_elem = insn_elem->next) | 779 for (insn_elem = define_insn_queue; insn_elem ; insn_elem = insn_elem->next) |
780 { | 780 { |
781 int alternatives, max_operand; | 781 int alternatives, max_operand; |
782 rtx pred, insn, pattern, split; | 782 rtx pred, insn, pattern, split; |
783 char *new_name; | |
783 int i; | 784 int i; |
784 | 785 |
785 if (! is_predicable (insn_elem)) | 786 if (! is_predicable (insn_elem)) |
786 continue; | 787 continue; |
787 | 788 |
804 if (pred == NULL) | 805 if (pred == NULL) |
805 return; | 806 return; |
806 | 807 |
807 /* Construct a new pattern for the new insn. */ | 808 /* Construct a new pattern for the new insn. */ |
808 insn = copy_rtx (insn_elem->data); | 809 insn = copy_rtx (insn_elem->data); |
809 XSTR (insn, 0) = ""; | 810 new_name = XNEWVAR (char, strlen XSTR (insn_elem->data, 0) + 4); |
811 sprintf (new_name, "*p %s", XSTR (insn_elem->data, 0)); | |
812 XSTR (insn, 0) = new_name; | |
810 pattern = rtx_alloc (COND_EXEC); | 813 pattern = rtx_alloc (COND_EXEC); |
811 XEXP (pattern, 0) = pred; | 814 XEXP (pattern, 0) = pred; |
812 if (XVECLEN (insn, 1) == 1) | 815 if (XVECLEN (insn, 1) == 1) |
813 { | 816 { |
814 XEXP (pattern, 1) = XVECEXP (insn, 1, 0); | 817 XEXP (pattern, 1) = XVECEXP (insn, 1, 0); |