diff options
author | Jan Hubicka <jh@suse.cz> | 2000-09-29 11:40:24 +0000 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2000-09-29 11:40:24 +0000 |
commit | 6c698a6d9b4a78f1258cbf2432047a4e23fbc9d5 (patch) | |
tree | 86f0f02c1cd763e7136d740c442a6c1fed6e56af /gcc/final.c | |
parent | b1cdafbb6c7bef4c21922ae2ce25b64445dc49cc (diff) | |
download | gcc-6c698a6d9b4a78f1258cbf2432047a4e23fbc9d5.zip gcc-6c698a6d9b4a78f1258cbf2432047a4e23fbc9d5.tar.gz gcc-6c698a6d9b4a78f1258cbf2432047a4e23fbc9d5.tar.bz2 |
final.c (final_scan_insn): Remove extra extract_insn call; Use caching for constrain_operands.
* final.c (final_scan_insn): Remove extra extract_insn call;
Use caching for constrain_operands.
(cleanup_subreg_operands): Use caching for extract_insn.
* recog.c (constrain_operands_cached): New.
* recog.h (constrain_operands_cached): Declare.
* i386.c (ix86_attr_length_immediate_default,
ix86_attr_length_address_default, ix86_agi_dependant): Cache
extract_insn call.
* recog.c (asm_noperands): Tweak.
(extract_insn): Do not call asm_noperads for non-asm instructions.
From-SVN: r36665
Diffstat (limited to 'gcc/final.c')
-rw-r--r-- | gcc/final.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/gcc/final.c b/gcc/final.c index bfd4754..0e22b06 100644 --- a/gcc/final.c +++ b/gcc/final.c @@ -2919,7 +2919,6 @@ final_scan_insn (insn, file, optimize, prescan, nopeepholes) since `reload' should have changed them so that they do. */ insn_code_number = recog_memoized (insn); - extract_insn (insn); cleanup_subreg_operands (insn); /* Dump the insn in the assembly for debugging. */ @@ -2930,7 +2929,7 @@ final_scan_insn (insn, file, optimize, prescan, nopeepholes) print_rtx_head = ""; } - if (! constrain_operands (1)) + if (! constrain_operands_cached (1)) fatal_insn_not_found (insn); /* Some target machines need to prescan each insn before @@ -3138,8 +3137,7 @@ cleanup_subreg_operands (insn) rtx insn; { int i; - - extract_insn (insn); + extract_insn_cached (insn); for (i = 0; i < recog_data.n_operands; i++) { if (GET_CODE (recog_data.operand[i]) == SUBREG) |