From: Tamar Christina Date: Sat, 9 Jul 2022 01:54:44 +0000 (-0400) Subject: [PATCH][s390]: Fix the usage of store_bit_field in the backend. X-Git-Tag: basepoints/gcc-14~5625 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=84ff566c63cde517c7d963a554e338531fb059f1;p=thirdparty%2Fgcc.git [PATCH][s390]: Fix the usage of store_bit_field in the backend. Hi All, I seem to have broken the s390 bootstrap because I added a new parameter to the store_bit_field function to indicate whether the value the field of is being set is currently undefined. If it's undefined we use a subreg instead. In this case the value of false restores the old behavior. Ok for master? Thanks, Tamar gcc/ChangeLog: * config/s390/s390.cc (s390_expand_atomic): Pass false to store_bit_field to indicate that the value is not undefined. --- diff --git a/gcc/config/s390/s390.cc b/gcc/config/s390/s390.cc index 444b1ec20d7..5aaf76a9490 100644 --- a/gcc/config/s390/s390.cc +++ b/gcc/config/s390/s390.cc @@ -7468,7 +7468,7 @@ s390_expand_atomic (machine_mode mode, enum rtx_code code, case SET: if (ac.aligned && MEM_P (val)) store_bit_field (new_rtx, GET_MODE_BITSIZE (mode), 0, - 0, 0, SImode, val, false); + 0, 0, SImode, val, false, false); else { new_rtx = expand_simple_binop (SImode, AND, new_rtx, ac.modemaski,