This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Minor optimization fix in expr.c:convert_move
- From: kenner at vlsi1 dot ultra dot nyu dot edu (Richard Kenner)
- To: gcc-patches at gcc dot gnu dot org
- Date: Sat, 29 Dec 01 16:03:50 EST
- Subject: Minor optimization fix in expr.c:convert_move
On Alpha, there are times when a 32-bit load will sometimes have
a SIGN_EXTEND in the same insn and sometimes on a subsequent insn,
thus preventing CSE. A missed optimization isn't a major bug, but
this is a very local and safe change.
Tested on alphaev56-dec-osf4.0c.
Sat Dec 29 15:48:54 2001 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* expr.c (convert_move): If -fforce-mem, force FROM to not be memory.
*** expr.c 2001/12/28 07:51:59 1.404
--- expr.c 2001/12/29 20:50:39
*************** convert_move (to, from, unsignedp)
*** 1053,1056 ****
--- 1053,1059 ----
!= CODE_FOR_nothing)
{
+ if (flag_force_mem)
+ from = force_not_mem (from);
+
emit_unop_insn (code, to, from, equiv_code);
return;