mirror of
git://gcc.gnu.org/git/gcc.git
synced 2024-12-23 00:59:36 +08:00
expr.c (expand_builtin, [...]): Set MEM_IN_STRUCT_P if the argument is the address of a structure or array.
* expr.c (expand_builtin, case MEMSET): Set MEM_IN_STRUCT_P if the argument is the address of a structure or array. * configure.in: Enable Haifa scheduler by default for SPARC. From-SVN: r19405
This commit is contained in:
parent
e89d3e6faf
commit
87d1ea7937
@ -1,3 +1,10 @@
|
||||
Fri Apr 24 16:11:47 1998 John Carr <jfc@mit.edu>
|
||||
|
||||
* expr.c (expand_builtin, case MEMSET): Set MEM_IN_STRUCT_P
|
||||
if the argument is the address of a structure or array.
|
||||
|
||||
* configure.in: Enable Haifa scheduler by default for SPARC.
|
||||
|
||||
Fri Apr 24 20:55:47 1998 J"orn Rennecke <amylaar@cygnus.co.uk>
|
||||
|
||||
* cse.c (cse_set_around_loop): Don't do optimization when
|
||||
|
@ -2891,7 +2891,7 @@ fi
|
||||
if [[ x$enable_haifa = x ]]
|
||||
then
|
||||
case $target in
|
||||
alpha*-* | hppa1.?-* | powerpc*-* | rs6000-*)
|
||||
alpha*-* | hppa1.?-* | powerpc*-* | rs6000-* | *sparc-*)
|
||||
enable_haifa=yes;;
|
||||
esac
|
||||
fi
|
||||
|
@ -8634,7 +8634,13 @@ expand_builtin (exp, target, subtarget, mode, ignore)
|
||||
/* There could be a void* cast on top of the object. */
|
||||
while (TREE_CODE (dest) == NOP_EXPR)
|
||||
dest = TREE_OPERAND (dest, 0);
|
||||
type = TREE_TYPE (TREE_TYPE (dest));
|
||||
|
||||
if (TREE_CODE (dest) == ADDR_EXPR)
|
||||
/* If this is the address of an object, check whether the
|
||||
object is an array. */
|
||||
type = TREE_TYPE (TREE_OPERAND (dest, 0));
|
||||
else
|
||||
type = TREE_TYPE (TREE_TYPE (dest));
|
||||
MEM_IN_STRUCT_P (dest_mem) = AGGREGATE_TYPE_P (type);
|
||||
|
||||
dest_addr = clear_storage (dest_mem, len_rtx, dest_align);
|
||||
|
Loading…
Reference in New Issue
Block a user