https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93449

            Bug ID: 93449
           Summary: PCC: Missing conversion builtin from vector to
                    _Decimal128 and vice versa
           Product: gcc
           Version: 8.3.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: jens.seifert at de dot ibm.com
  Target Milestone: ---

I am currently porting an application from AIX to PPCLE and found that I am
lacking compiler builtins for transforming vector input into _Decimal128 and
vice versa. This can be done on PowerPC using xxlor + xxpermdi (2 instructions
on >= Power7).
The conversion routines __builtin_denbcdq/__builtin_ddedpdq are based on
_Decimal128 input and output. The missing piece is vector to _Decimal128 and
vice versa.

Background:
>From and to vector register I can load/store variable length BCD decimals.
BCD Decimal can be converted to _Decimal128. Then I can perform multiply and
divide. Then can be converted back to BCD, but then again I want to store a BCD
decimal which might not be 16-byte in size.

Reply via email to