md.texi (Standard Names): Clarify when movX is needed.

* md.texi (Standard Names): Clarify when movX is needed.

	* combine.c (simplify_comparison) [MINUS]: Do not replace
	all (op (minus A B) 0) with (op A B).

From-SVN: r32940
This commit is contained in:
Hans-Peter Nilsson 2000-04-05 21:14:53 +00:00 committed by Hans-Peter Nilsson
parent 0d0df4fcbf
commit 65945ec1b3
3 changed files with 13 additions and 9 deletions

View File

@ -4,6 +4,11 @@ Wed Apr 5 12:35:18 2000 Hans-Peter Nilsson <hp@axis.com>
from the insn where REG_RETVAL is added.
(emit_no_conflict_block): Ditto.
* md.texi (Standard Names): Clarify when movX is needed.
* combine.c (simplify_comparison) [MINUS]: Do not replace
all (op (minus A B) 0) with (op A B).
Wed Apr 5 18:03:31 2000 Toshiyasu Morita (toshi.morita@sega.com)
J"orn Rennecke <amylaar@cygnus.co.uk>

View File

@ -10452,13 +10452,10 @@ simplify_comparison (code, pop0, pop1)
break;
case MINUS:
/* (op (minus A B) 0) -> (op A B) */
if (op1 == const0_rtx)
{
op1 = XEXP (op0, 1);
op0 = XEXP (op0, 0);
continue;
}
/* We used to optimize signed comparisons against zero, but that
was incorrect. Unsigned comparisons against zero (GTU, LEU)
arrive here as equality comparisons, or (GEU, LTU) are
optimized away. No need to special-case them. */
/* (eq (minus A B) C) -> (eq A (plus B C)) or
(eq B (minus A C)), whichever simplifies. We can only do

View File

@ -1822,8 +1822,10 @@ to store the specified value in the part of the register that corresponds
to mode @var{m}. The effect on the rest of the register is undefined.
This class of patterns is special in several ways. First of all, each
of these names @emph{must} be defined, because there is no other way
to copy a datum from one place to another.
of these names up to and including full word size @emph{must} be defined,
because there is no other way to copy a datum from one place to another.
If there are patterns accepting operands in larger modes,
@samp{mov@var{m}} must be defined for integer modes of those sizes.
Second, these patterns are not used solely in the RTL generation pass.
Even the reload pass can generate move insns to copy values from stack