https://gcc.gnu.org/g:4d851ca89569b71ee87f22644d2e70938bb84992

commit r15-8100-g4d851ca89569b71ee87f22644d2e70938bb84992
Author: Mael Cravero <mael.crav...@embecosm.com>
Date:   Tue Apr 30 12:04:50 2024 +0200

    gccrs: 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 d2410768c32f..273ab7889b08 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