diff options
author | wilson <wilson@138bc75d-0d04-0410-961f-82ee72b054a4> | 1995-12-19 02:07:48 +0000 |
---|---|---|
committer | wilson <wilson@138bc75d-0d04-0410-961f-82ee72b054a4> | 1995-12-19 02:07:48 +0000 |
commit | 322f001898aa38a4d2560c1c2a3a2d3e95a7e5d4 (patch) | |
tree | 5c3e6e43eaa1e2645b9831068afc310a7ecab6d6 /gcc/optabs.c | |
parent | 36c8378ba3383a6993f2fcbdd77043ce2acaa04a (diff) | |
download | gcc-322f001898aa38a4d2560c1c2a3a2d3e95a7e5d4.tar.gz |
(emit_cmp_insn): Likewise for memcmp and bcmp.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@10809 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/optabs.c')
-rw-r--r-- | gcc/optabs.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/gcc/optabs.c b/gcc/optabs.c index 2732ebed107..c63c29d5d0e 100644 --- a/gcc/optabs.c +++ b/gcc/optabs.c @@ -2745,12 +2745,17 @@ emit_cmp_insn (x, y, comparison, size, mode, unsignedp, align) emit_library_call (memcmp_libfunc, 0, TYPE_MODE (integer_type_node), 3, XEXP (x, 0), Pmode, XEXP (y, 0), Pmode, - size, Pmode); + convert_to_mode (TYPE_MODE (sizetype), size, + TREE_UNSIGNED (sizetype)), + TYPE_MODE (sizetype)); #else emit_library_call (bcmp_libfunc, 0, TYPE_MODE (integer_type_node), 3, XEXP (x, 0), Pmode, XEXP (y, 0), Pmode, - size, Pmode); + convert_to_mode (TYPE_MODE (integer_type_node), + size, + TREE_UNSIGNED (integer_type_node)), + TYPE_MODE (integer_type_node)); #endif emit_cmp_insn (hard_libcall_value (TYPE_MODE (integer_type_node)), const0_rtx, comparison, NULL_RTX, |