From: Piotr Trojanek Date: Fri, 27 Sep 2024 15:53:29 +0000 (+0200) Subject: ada: Avoid run-time conversion of 0 from Int to Uint X-Git-Tag: basepoints/gcc-16~4659 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d797d051aabdd7beb38935b4610cc44f94c18aea;p=thirdparty%2Fgcc.git ada: Avoid run-time conversion of 0 from Int to Uint Code cleanup and tiny performance improvement; semantics is unaffected. gcc/ada/ChangeLog: * exp_ch4.adb (Expand_N_Op_Subtract): Replace numeric literal with universal integer constant, just like it is done in expansion of addition operator. --- diff --git a/gcc/ada/exp_ch4.adb b/gcc/ada/exp_ch4.adb index 9024c1aebb2d..b2cc672579f0 100644 --- a/gcc/ada/exp_ch4.adb +++ b/gcc/ada/exp_ch4.adb @@ -10031,7 +10031,7 @@ package body Exp_Ch4 is if Is_Integer_Type (Typ) and then Compile_Time_Known_Value (Right_Opnd (N)) - and then Expr_Value (Right_Opnd (N)) = 0 + and then Expr_Value (Right_Opnd (N)) = Uint_0 then Rewrite (N, Left_Opnd (N)); return;