https://gcc.gnu.org/g:8897be9aa1d166c377bfd9ff4dfe79c1b1b40b89
commit 8897be9aa1d166c377bfd9ff4dfe79c1b1b40b89 Author: Michael Meissner <[email protected]> Date: Fri Sep 18 16:14:56 2026 -0400 Update ChangeLog.* Diff: --- gcc/ChangeLog.float | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gcc/ChangeLog.float b/gcc/ChangeLog.float index 1d85c01abd1d..eee57dbddc35 100644 --- a/gcc/ChangeLog.float +++ b/gcc/ChangeLog.float @@ -1,3 +1,27 @@ +==================== Branch work263-float, patch #218 ==================== + +Rework optimizing bfloat16 a + b + c + +2026-09-18 Michael Meissner <[email protected]> + +gcc/ + + * config/rs6000/float16.cc (bfloat16_operation_as_v4sf_inner): Split + inner part from bfloat16_operation_as_v4sf to do the operation in + V4SFmode. Add support for chained binary operations. + (bfloat16_operation_as_v4sf): Call bfloat16_operation_as_v4sf_inner and + then convert the result to SFmode or BFmode. + * config/rs6000/float16.md (bfloat16 peephole2): Delete peephole2 that + tried to allow chained operations. + * config/rs6000/predicates.md (bfloat16_v4sf_operand): Allow chained + operations of plus, subtract, and multiply. + (bfloat16_bf_operand): Allow SFmode CONST_DOUBLE. + +gcc/testsuite/ + + * gcc.target/powerpc/bf16-3.c: New test. + * gcc.target/powerpc/bf16-4.c: Likewise. + ==================== Branch work263-float, patch #217 ==================== Optimize bfloat16 a + b + c
