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. --- inline copy of patch -- diff --git a/gcc/config/s390/s390.cc b/gcc/config/s390/s390.cc index 444b1ec20d768d829ab19a41f114a91119335e00..5aaf76a94908c4d8f09aca5ac64ef3a418615b9e 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, --
diff --git a/gcc/config/s390/s390.cc b/gcc/config/s390/s390.cc index 444b1ec20d768d829ab19a41f114a91119335e00..5aaf76a94908c4d8f09aca5ac64ef3a418615b9e 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,