public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
* POWER __builtin_add_overflow/__builtin_mul_overflow with u64
@ 2023-02-14  3:48 Simon Richter
  2023-02-14  8:23 ` Jakub Jelinek
  0 siblings, 1 reply; 4+ messages in thread
From: Simon Richter @ 2023-02-14  3:48 UTC (permalink / raw)
  To: gcc


[-- Attachment #1.1: Type: text/plain, Size: 661 bytes --]

Hi,

I'm looking at the generated code for these builtins on POWER:

         add 4,3,4
         subfc 3,3,4
         subfe 3,3,3
         std 4,0(5)
         rldicl 3,3,0,63
         blr

and

         mulld 10,3,4
         mulhdu 3,3,4
         addic 9,3,-1
         std 10,0(5)
         subfe 3,9,3
         blr

The POWER architecture has variants of these instructions with builtin 
overflow checks (addo/mulldo), but these aren't listed in the .md files, 
and the builtins don't generate them either.

Is this intentional (I've found a few comments that mulldo is microcoded 
on CellBE and should be avoided there)?

    Simon

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2023-02-15  9:44 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-02-14  3:48 POWER __builtin_add_overflow/__builtin_mul_overflow with u64 Simon Richter
2023-02-14  8:23 ` Jakub Jelinek
2023-02-14  9:26   ` Eric Botcazou
2023-02-15  9:43   ` Segher Boessenkool

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).