aboutsummaryrefslogtreecommitdiff
path: root/gcc/builtins.c
diff options
context:
space:
mode:
authorClinton Popetz <cpopetz@cygnus.com>2000-04-04 21:10:43 +0000
committerClinton Popetz <cpopetz@gcc.gnu.org>2000-04-04 17:10:43 -0400
commit21e62dfa2a67a84aa0bd2ca093046287f13fbcb5 (patch)
tree8385f3edb7e68007dfb919b5723b50d4c5d5f96d /gcc/builtins.c
parent7c32404c2db25e8197b4833cec5f06d65b046149 (diff)
downloadgcc-21e62dfa2a67a84aa0bd2ca093046287f13fbcb5.zip
gcc-21e62dfa2a67a84aa0bd2ca093046287f13fbcb5.tar.gz
gcc-21e62dfa2a67a84aa0bd2ca093046287f13fbcb5.tar.bz2
builtins.c (expand_builtin_strlen): Force the source to be a memory address.
* builtins.c (expand_builtin_strlen): Force the source to be a memory address. From-SVN: r32911
Diffstat (limited to 'gcc/builtins.c')
-rw-r--r--gcc/builtins.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/builtins.c b/gcc/builtins.c
index 3540fcc..1590d38 100644
--- a/gcc/builtins.c
+++ b/gcc/builtins.c
@@ -1388,7 +1388,8 @@ expand_builtin_strlen (exp, target, mode)
/* Now that we are assured of success, expand the source. */
start_sequence ();
- pat = expand_expr (src, src_reg, ptr_mode, EXPAND_SUM);
+ pat = memory_address (BLKmode,
+ expand_expr (src, src_reg, ptr_mode, EXPAND_SUM));
if (pat != src_reg)
emit_move_insn (src_reg, pat);
pat = gen_sequence ();