diff options
author | Richard Sandiford <richard.sandiford@arm.com> | 2015-06-14 20:25:40 +0000 |
---|---|---|
committer | Richard Sandiford <rsandifo@gcc.gnu.org> | 2015-06-14 20:25:40 +0000 |
commit | 3beaff21f346c7f34bf45f7b56f2c1c880a91e31 (patch) | |
tree | 5c9473ab1cc9660cc825b2a8b95569ab4d1e7cc6 /gcc/emit-rtl.c | |
parent | b25b4ed2b7010c0d36474b4caf3f7fe1a094095c (diff) | |
download | gcc-3beaff21f346c7f34bf45f7b56f2c1c880a91e31.zip gcc-3beaff21f346c7f34bf45f7b56f2c1c880a91e31.tar.gz gcc-3beaff21f346c7f34bf45f7b56f2c1c880a91e31.tar.bz2 |
rtl.h (classify_insn): Declare.
gcc/
* rtl.h (classify_insn): Declare.
* emit-rtl.c (classify_insn): Move to...
* rtl.c: ...here and add generator support.
* gensupport.h (get_emit_function, needs_barrier_p): Declare.
* gensupport.c (get_emit_function, needs_barrier_p): New functions.
* genemit.c (gen_emit_seq): New function.
(gen_expand, gen_split): Use it.
From-SVN: r224470
Diffstat (limited to 'gcc/emit-rtl.c')
-rw-r--r-- | gcc/emit-rtl.c | 37 |
1 files changed, 0 insertions, 37 deletions
diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c index e064d4e..e64ca4c 100644 --- a/gcc/emit-rtl.c +++ b/gcc/emit-rtl.c @@ -5304,43 +5304,6 @@ set_dst_reg_note (rtx insn, enum reg_note kind, rtx datum, rtx dst) return NULL_RTX; } -/* Return an indication of which type of insn should have X as a body. - The value is CODE_LABEL, INSN, CALL_INSN or JUMP_INSN. */ - -static enum rtx_code -classify_insn (rtx x) -{ - if (LABEL_P (x)) - return CODE_LABEL; - if (GET_CODE (x) == CALL) - return CALL_INSN; - if (ANY_RETURN_P (x)) - return JUMP_INSN; - if (GET_CODE (x) == SET) - { - if (SET_DEST (x) == pc_rtx) - return JUMP_INSN; - else if (GET_CODE (SET_SRC (x)) == CALL) - return CALL_INSN; - else - return INSN; - } - if (GET_CODE (x) == PARALLEL) - { - int j; - for (j = XVECLEN (x, 0) - 1; j >= 0; j--) - if (GET_CODE (XVECEXP (x, 0, j)) == CALL) - return CALL_INSN; - else if (GET_CODE (XVECEXP (x, 0, j)) == SET - && SET_DEST (XVECEXP (x, 0, j)) == pc_rtx) - return JUMP_INSN; - else if (GET_CODE (XVECEXP (x, 0, j)) == SET - && GET_CODE (SET_SRC (XVECEXP (x, 0, j))) == CALL) - return CALL_INSN; - } - return INSN; -} - /* Emit the rtl pattern X as an appropriate kind of insn. If X is a label, it is simply added into the insn chain. */ |