diff options
Diffstat (limited to 'gcc/builtins.c')
-rw-r--r-- | gcc/builtins.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/gcc/builtins.c b/gcc/builtins.c index 3e57eb0..80a1bb1 100644 --- a/gcc/builtins.c +++ b/gcc/builtins.c @@ -5163,12 +5163,10 @@ default_emit_call_builtin___clear_cache (rtx begin, rtx end) void maybe_emit_call_builtin___clear_cache (rtx begin, rtx end) { - if ((GET_MODE (begin) != ptr_mode && GET_MODE (begin) != Pmode) - || (GET_MODE (end) != ptr_mode && GET_MODE (end) != Pmode)) - { - error ("both arguments to %<__builtin___clear_cache%> must be pointers"); - return; - } + gcc_assert ((GET_MODE (begin) == ptr_mode || GET_MODE (begin) == Pmode + || CONST_INT_P (begin)) + && (GET_MODE (end) == ptr_mode || GET_MODE (end) == Pmode + || CONST_INT_P (end))); if (targetm.have_clear_cache ()) { |