https://gcc.gnu.org/g:3a31617b48a4840b0aa90726333e4e7dedf1493b

commit 3a31617b48a4840b0aa90726333e4e7dedf1493b
Author: Mael Cravero <mael.crav...@embecosm.com>
Date:   Tue Apr 30 12:04:50 2024 +0200

    Remove unnecessary SIDE_EFFECTS/READONLY macros
    
    Closes #2357
    
    gcc/rust/ChangeLog:
    
            * rust-gcc.cc: remove unnecessary TREE_SIDE_EFFECTS and 
TREE_READONLY
            macros used in arithmetic overflow checks.
    
    Signed-off-by: Mael Cravero <mael.crav...@embecosm.com>

Diff:
---
 gcc/rust/rust-gcc.cc | 17 -----------------
 1 file changed, 17 deletions(-)

diff --git a/gcc/rust/rust-gcc.cc b/gcc/rust/rust-gcc.cc
index f17e19a2dfcf..6f547ee7b9de 100644
--- a/gcc/rust/rust-gcc.cc
+++ b/gcc/rust/rust-gcc.cc
@@ -1149,15 +1149,6 @@ fetch_overflow_builtins (ArithmeticOrLogicalOperator op)
   rust_assert (abort);
   rust_assert (builtin);
 
-  // FIXME: ARTHUR: This is really ugly. The builtin context should take care 
of
-  // that
-  TREE_SIDE_EFFECTS (abort) = 1;
-  TREE_READONLY (abort) = 0;
-
-  // FIXME: ARTHUR: Same here. Remove these!
-  TREE_SIDE_EFFECTS (builtin) = 1;
-  TREE_READONLY (builtin) = 0;
-
   return {abort, builtin};
 }
 
@@ -1192,10 +1183,6 @@ arithmetic_or_logical_expression_checked 
(ArithmeticOrLogicalOperator op,
 
   auto abort_call = build_call_expr_loc (location, abort, 0);
 
-  // FIXME: ARTHUR: Is that needed?
-  TREE_SIDE_EFFECTS (abort_call) = 1;
-  TREE_READONLY (abort_call) = 0;
-
   auto builtin_call
     = build_call_expr_loc (location, builtin, 3, left, right, result_ref);
   auto overflow_check
@@ -1205,10 +1192,6 @@ arithmetic_or_logical_expression_checked 
(ArithmeticOrLogicalOperator op,
   auto if_block = build3_loc (location, COND_EXPR, void_type_node,
                              overflow_check, abort_call, NULL_TREE);
 
-  // FIXME: ARTHUR: Needed?
-  TREE_SIDE_EFFECTS (if_block) = 1;
-  TREE_READONLY (if_block) = 0;
-
   return if_block;
 }

Reply via email to