[Bug target/117584] PowerPC ABI for BitInt needs to be done

"mmatti at linux dot vnet.ibm.com via Gcc-bugs" <[email protected]>
Newsgroups gmane.comp.gcc.bugs
Message-ID <[email protected]/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117584

--- Comment #10 from Manjunath S Matti <mmatti at linux dot vnet.ibm.com> ---
Created attachment 65135
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=65135&action=edit
Final patch

I see a few test cases fail, due to lack of support of float16 on rs6000 port.

Expected UNSUPPORTED (effective-target gated, unrelated to this patch — PowerPC
has no _Float16 hardware/ABI support) for both LE and BE:

gcc.dg/dfp/bitint-7.c
gcc.dg/bitint-132.c
gcc.dg/torture/bitint-25.c (-O0, -O2)

gcc.dg/bitint-108.c (-m32 only) — no __int128 support on 32-bit PowerPC (passes
on -m64).
gcc.dg/torture/bitint-47.c, gcc.dg/torture/bitint-61.c (-m32 only, -O0/-O2) —
same int128-gating pattern.


But a few failures need looking into

gcc.dg/torture/bitint-32.c      -m64    -O0 only (passes -O2)
gcc.dg/torture/bitint-33.c      -m64    -O0 only (passes -O2)
gcc.dg/torture/bitint-34.c      -m64    -O0 only (passes -O2)
gcc.dg/torture/bitint-35.c      -m64    -O0 only (passes -O2)
gcc.dg/torture/bitint-36.c      -m64    -O0 only (passes -O2)
gcc.dg/torture/bitint-37.c      -m64    -O0 only (passes -O2)
gcc.dg/torture/bitint-93.c      -m64    both -O0 and -O2        
gcc.dg/torture/bitint-94.c      -m64    both -O0 and -O2

I am debugging these issues, which points me to a code block in
gcc/gcc/gimple-lower-bitint.cc 

=> tree src = build2 (MEM_REF, atype,
                    build_fold_addr_expr (unshare_expr (obj)), off);
g = gimple_build_call (fn, 3,
                       build_fold_addr_expr (unshare_expr (obj)),
                       src, build_int_cst (size_type_node,
                                           obj_nelts * m_limb_size));
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.