aboutsummaryrefslogtreecommitdiff
path: root/libjava/gnu/java
diff options
context:
space:
mode:
authorKarl Meakin <karl.meakin@arm.com>2025-11-06 16:34:06 +0000
committerKarl Meakin <karl.meakin@arm.com>2026-01-28 11:40:02 +0000
commit70870cc59e475dae7ae47c58f9ff0122971a3112 (patch)
tree80fc3052e9bf8d38515a24e5af3565632937f727 /libjava/gnu/java
parent7b29e31e693953a306b2bd0db7b2975ceed7e44c (diff)
downloadgcc-70870cc59e475dae7ae47c58f9ff0122971a3112.zip
gcc-70870cc59e475dae7ae47c58f9ff0122971a3112.tar.gz
gcc-70870cc59e475dae7ae47c58f9ff0122971a3112.tar.bz2
aarch64: FEAT_SVE_BFSCALE support
Add support for the `SVE_BFSCALE` architecture extension. gcc/ChangeLog: * doc/invoke.texi: Document `+sve-bfscale` flag. * config/aarch64/aarch64.h (TARGET_SVE_BFSCALE): New macro. * config/aarch64/aarch64-c.cc (aarch64_update_cpp_builtins): Define `__AARCH64_FEATURE_SVE_BFSCALE`. * config/aarch64/aarch64-sve-builtins-base.cc: Skip constant folding for floating-point or unpredicated multiplications. * config/aarch64/aarch64-sve-builtins-sve2.def: New `SVE_FUNCTION`s. * config/aarch64/aarch64-sve.md: Modify insns for `SVE_COND_FP_BINARY_INT` to handle BF16 modes. * config/aarch64/aarch64-sve2.md (@aarch64_sve_<optab><mode>, @aarch64_sve_<optab><mode>_single): New insn for `BFSCALE`. Modify insns for `UNSPEC_FSCALE` to handle BF16 modes. * config/aarch64/iterators.md (SVE_FULL_F_SCALAR): Add `VNx8BF` to iterator. (SVE_FULL_F_BFSCALE): New iterator. (SVE_Fx24_BFSCALE): New iterator. (SVE_BFx24): New iterator. (UNSPEC_FMUL): New unspec. (V_INT_EQUIV): Add entries for BF16 modes. (b): Add entries for scalar float modes. (is_bf16): Add entries for BF16 modes and reformat. (SVSCALE_SINGLE_INTARG): Likewise. (SVSCALE_INTARG): Likewise. (SVE_FP_MULL): New iterator. gcc/testsuite/ChangeLog: * lib/target-supports.exp: Add `sve-bfscale` to `sve_exts`. * gcc.target/aarch64/pragma_cpp_predefs_4.c: Add test for `__ARM_SVE_FEATURE_BFSCALE`. * gcc.target/aarch64/sme2/acle-asm/mul_bf16_x2.c: New test. * gcc.target/aarch64/sme2/acle-asm/mul_bf16_x4.c: New test. * gcc.target/aarch64/sme2/acle-asm/scale_bf16_x2.c: New test. * gcc.target/aarch64/sme2/acle-asm/scale_bf16_x4.c: New test. * gcc.target/aarch64/sve/acle/asm/scale_bf16.c: New test. * gcc.target/aarch64/sve/acle/general-c/bfscale.c: New test.
Diffstat (limited to 'libjava/gnu/java')
0 files changed, 0 insertions, 0 deletions