[Bug target/93176] PPC: inefficient 64-bit constant consecutive ones

2023-10-07 Thread guojiufu at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93176

Jiu Fu Guo  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #13 from Jiu Fu Guo  ---
Patches are committed for using "li/lis;rldicl/rldicr/rldic" to construct
constants.

[Bug target/93176] PPC: inefficient 64-bit constant consecutive ones

2023-08-18 Thread bergner at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93176

Peter Bergner  changed:

   What|Removed |Added

URL|https://gcc.gnu.org/piperma |https://gcc.gnu.org/piperma
   |il/gcc-patches/2020-October |il/gcc-patches/2023-July/62
   |/555760.html|3519.html
 Status|NEW |ASSIGNED

[Bug target/93176] PPC: inefficient 64-bit constant consecutive ones

2023-08-18 Thread guojiufu at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93176

--- Comment #12 from Jiu Fu Guo  ---
Thanks a lot for asking!

The patch which handles this is submitted at:
https://gcc.gnu.org/pipermail/gcc-patches/2023-July/623519.html

I would ping this patch again.  If ok, I will commit to trunk.

(And the series patches could be committed for "li/lis; rldicl/rldicr/rldic"
https://gcc.gnu.org/pipermail/gcc-patches/2023-June/621000.html)

[Bug target/93176] PPC: inefficient 64-bit constant consecutive ones

2023-08-18 Thread sjames at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93176

Sam James  changed:

   What|Removed |Added

 CC||sjames at gcc dot gnu.org

--- Comment #11 from Sam James  ---
(In reply to Jens Seifert from comment #10)
> Looks like no patch in the area got delivered. I did a small test for 
> 

Peter's was at
https://inbox.sourceware.org/gcc-patches/838b2e97-dfa9-3ca0-c3c6-1767d60dd...@linux.ibm.com/,
Alan's may be
https://gcc.gnu.org/pipermail/gcc-patches/2020-September/553927.html.

[Bug target/93176] PPC: inefficient 64-bit constant consecutive ones

2023-08-18 Thread jens.seifert at de dot ibm.com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93176

--- Comment #10 from Jens Seifert  ---
Looks like no patch in the area got delivered. I did a small test for 

unsigned long long c()
{
return 0xULL;
}

gcc 13.2.0:
li 3,0
ori 3,3,0x
sldi 3,3,32

expected:
li 3, -1
rldic 3, 3, 32, 16

All consecutive ones can be created with li + rldic.

The rotate eliminates the bits on the right and the clear the bits on the left
as described below:

  li t,-1
  rldic d,T,MB,63-ME

[Bug target/93176] PPC: inefficient 64-bit constant consecutive ones

2023-08-17 Thread bergner at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93176

Peter Bergner  changed:

   What|Removed |Added

 CC||guojiufu at gcc dot gnu.org,
   ||linkw at gcc dot gnu.org

--- Comment #9 from Peter Bergner  ---
Jeff, none of your constant generation patches covers this, correct?  If not,
maybe given your recent work on improving the code gen for contents, maybe you
could pick up the patch and shepherd it to approval?  I would like to see this
work finally committed.

[Bug target/93176] PPC: inefficient 64-bit constant consecutive ones

2023-08-17 Thread amodra at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93176

Alan Modra  changed:

   What|Removed |Added

 Status|ASSIGNED|NEW
   Assignee|amodra at gcc dot gnu.org  |unassigned at gcc dot 
gnu.org

--- Comment #8 from Alan Modra  ---
Nothing happened.  The patch wasn't reviewed.  I didn't ping the patch.  I'm
not working on gcc any more, so should remove myself as assignee for this bug.

[Bug target/93176] PPC: inefficient 64-bit constant consecutive ones

2023-08-16 Thread jens.seifert at de dot ibm.com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93176

--- Comment #7 from Jens Seifert  ---
What happened ? Still waiting for improvement.

[Bug target/93176] PPC: inefficient 64-bit constant consecutive ones

2020-11-18 Thread amodra at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93176

Alan Modra  changed:

   What|Removed |Added

URL|https://gcc.gnu.org/piperma |https://gcc.gnu.org/piperma
   |il/gcc-patches/2020-Septemb |il/gcc-patches/2020-October
   |er/553661.html  |/555760.html

--- Comment #6 from Alan Modra  ---
No, the patch hasn't yet been reviewed.

[Bug target/93176] PPC: inefficient 64-bit constant consecutive ones

2020-11-18 Thread bergner at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93176

--- Comment #5 from Peter Bergner  ---
Alan, didn't one of your recent patches fix this particular bug?  So can we
mark this as fixed?

[Bug target/93176] PPC: inefficient 64-bit constant consecutive ones

2020-09-28 Thread bergner at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93176

Peter Bergner  changed:

   What|Removed |Added

   Assignee|bergner at gcc dot gnu.org |amodra at gcc dot 
gnu.org

--- Comment #4 from Peter Bergner  ---
(In reply to Peter Bergner from comment #3)
> I submitted a patch that implements this idea.

Actually, Alan is taking this over, so reassigning to him.

[Bug target/93176] PPC: inefficient 64-bit constant consecutive ones

2020-09-10 Thread bergner at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93176

Peter Bergner  changed:

   What|Removed |Added

URL||https://gcc.gnu.org/piperma
   ||il/gcc-patches/2020-Septemb
   ||er/553661.html
 Status|NEW |ASSIGNED
   Assignee|unassigned at gcc dot gnu.org  |bergner at gcc dot 
gnu.org
 CC||bergner at gcc dot gnu.org

--- Comment #3 from Peter Bergner  ---
(In reply to Segher Boessenkool from comment #2)
> When you want the bits from bit MB to ME (inclusive) set, you can just do
> 
>   li t,-1
>   rldic d,T,MB,63-ME
> 
> (bit # 0 is the high bit; can also do wrap-around masks this way).

I submitted a patch that implements this idea.

[Bug target/93176] PPC: inefficient 64-bit constant consecutive ones

2020-01-23 Thread segher at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93176

--- Comment #2 from Segher Boessenkool  ---
When you want the bits from bit MB to ME (inclusive) set, you can just do

  li t,-1
  rldic d,T,MB,63-ME

(bit # 0 is the high bit; can also do wrap-around masks this way).

Confirmed.

[Bug target/93176] PPC: inefficient 64-bit constant consecutive ones

2020-01-21 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93176

Martin Liška  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2020-01-21
 CC||marxin at gcc dot gnu.org
 Ever confirmed|0   |1

--- Comment #1 from Martin Liška  ---
@Segher: Can you please take a look?