On Tue, Feb 06, 2018 at 11:15:21AM -0600, Segher Boessenkool wrote: > Hi! > > On Mon, Feb 05, 2018 at 05:57:51PM -0500, Michael Meissner wrote: > > > We have > > > > > > (define_code_attr su [(sign_extend "s") > > > (zero_extend "u") > > > (fix "s") > > > (unsigned_fix "s") > > > (float "s") > > > (unsigned_float "u")]) > > > > > > and "s" for unsigned_fix seems like it should be "u". Very surprising > > > otherwise (if this is needed in some case, it should just write "s" there > > > instead of "<su>"). > > What about this?
You were right. I kept missing this. Sorry. Here is the patch for just this fix. As we've discussed, I'll apply this patch directly as being obvious, while waiting for the other builds. [gcc] 2018-02-06 Michael Meissner <meiss...@linux.vnet.ibm.com> PR target/84154 * config/rs6000/rs6000.md (su code attribute): Use "u" for unsigned_fix, not "s". Index: gcc/config/rs6000/rs6000.md =================================================================== --- gcc/config/rs6000/rs6000.md (revision 257269) +++ gcc/config/rs6000/rs6000.md (working copy) @@ -550,7 +550,7 @@ (define_code_attr u [(sign_extend "") (define_code_attr su [(sign_extend "s") (zero_extend "u") (fix "s") - (unsigned_fix "s") + (unsigned_fix "u") (float "s") (unsigned_float "u")]) -- Michael Meissner, IBM IBM, M/S 2506R, 550 King Street, Littleton, MA 01460-6245, USA email: meiss...@linux.vnet.ibm.com, phone: +1 (978) 899-4797