Ping! Please review! Thank you!
On 31/03/26 12:42 pm, Kishan Parmar wrote: > Hello Surya, > > On 27/03/26 10:22 am, Surya Kumari Jangala wrote: >>>> diff --git a/gcc/config/rs6000/rs6000.md b/gcc/config/rs6000/rs6000.md >>>> index 04a6c0f7461..7c48cb900b6 100644 >>>> --- a/gcc/config/rs6000/rs6000.md >>>> +++ b/gcc/config/rs6000/rs6000.md >>>> @@ -2676,21 +2676,18 @@ >>>> xxbrh %x0,%x1" >>>> "reload_completed && !TARGET_POWER10 && int_reg_operand (operands[0], >>>> HImode)" >>>> [(set (match_dup 3) >>>> - (and:SI (lshiftrt:SI (match_dup 4) >>>> - (const_int 8)) >>>> - (const_int 255))) >>>> - (set (match_dup 2) >>>> - (and:SI (ashift:SI (match_dup 4) >>>> - (const_int 8)) >>>> - (const_int 65280))) ;; 0xff00 >>>> + (ashift:SI (match_dup 4) >>>> + (const_int 8))) >>>> (set (match_dup 3) >>>> - (ior:SI (match_dup 3) >>>> - (match_dup 2)))] >>>> + (ior:SI (and:SI (match_dup 3) >>>> + (const_int -256)) >> Please replace '-256' with 65280. This makes for easier reading, plus >> logically >> a mask is just a sequence of bits usually treated as a positive number. >> >> -Surya > I think -256 or 4294967040 ((0xffffff00)) is required here to match the > intended SImode mask > and generate the correct |rlwimi|pattern, 65280 (0x0000ff00) will not be > equivalent. > > Thank You, > Kishan
