Merge FreeBSD modifications into gcc 3.2.1-prerelease:
1.2 do not create paradoxical FLOAT_MODE subregs I am not sure if this is still required. Approved by: obrien
This commit is contained in:
parent
accb351070
commit
e243da3452
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=102793
@ -357,6 +357,14 @@ gen_rtx_CONST_INT (mode, arg)
|
||||
return (rtx) *slot;
|
||||
}
|
||||
|
||||
rtx
|
||||
gen_int_mode (c, mode)
|
||||
HOST_WIDE_INT c;
|
||||
enum machine_mode mode;
|
||||
{
|
||||
return GEN_INT (trunc_int_for_mode (c, mode));
|
||||
}
|
||||
|
||||
/* CONST_DOUBLEs needs special handling because their length is known
|
||||
only at run-time. */
|
||||
|
||||
@ -2168,6 +2176,7 @@ widen_memory_access (memref, mode, offset)
|
||||
/* Similarly for the decl. */
|
||||
else if (DECL_P (expr)
|
||||
&& DECL_SIZE_UNIT (expr)
|
||||
&& TREE_CODE (DECL_SIZE_UNIT (expr)) == INTEGER_CST
|
||||
&& compare_tree_int (DECL_SIZE_UNIT (expr), size) >= 0
|
||||
&& (! memoffset || INTVAL (memoffset) >= 0))
|
||||
break;
|
||||
@ -5030,7 +5039,7 @@ init_emit_once (line_numbers)
|
||||
tries to use these variables. */
|
||||
for (i = - MAX_SAVED_CONST_INT; i <= MAX_SAVED_CONST_INT; i++)
|
||||
const_int_rtx[i + MAX_SAVED_CONST_INT] =
|
||||
gen_rtx_raw_CONST_INT (VOIDmode, i);
|
||||
gen_rtx_raw_CONST_INT (VOIDmode, (HOST_WIDE_INT) i);
|
||||
ggc_add_rtx_root (const_int_rtx, 2 * MAX_SAVED_CONST_INT + 1);
|
||||
|
||||
if (STORE_FLAG_VALUE >= - MAX_SAVED_CONST_INT
|
||||
|
Loading…
Reference in New Issue
Block a user