From a89de3a24d2312438848e513a0b02b480d52c81e Mon Sep 17 00:00:00 2001
From: Andrew MacLeod <amacleod@redhat.com>
Date: Tue, 13 Feb 2024 10:07:11 -0500
Subject: [PATCH 5/9] Remove incorrect asserts.
Gimple_range_op handles builtin functions, and a couple of asserts that
are in place are incorrect in this context, so just remove them.
* gimple-range-op.cc (gimple_range_op_handler::calc_op1): Don't
assert that here are less than 3 operands.
(gimple_range_op_handler::maybe_builtin_call): Simply return if
there is no type for the function call.
---
gcc/gimple-range-op.cc | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
@@ -178,7 +178,6 @@ gimple_range_op_handler::gimple_range_op_handler (gimple *s)
bool
gimple_range_op_handler::calc_op1 (vrange &r, const vrange &lhs_range)
{
- gcc_checking_assert (gimple_num_ops (m_stmt) < 3);
// Give up on empty ranges.
if (lhs_range.undefined_p ())
return false;
@@ -1213,7 +1212,8 @@ gimple_range_op_handler::maybe_builtin_call ()
if (func == CFN_LAST)
return;
tree type = gimple_range_type (call);
- gcc_checking_assert (type);
+ if (!type)
+ return;
if (!Value_Range::supports_type_p (type))
return;
--
2.41.0