[PATCH] D97857: [Matrix] Add support for matrix-by-scalar division.

2021-03-03 Thread Everton Constantino via Phabricator via cfe-commits
everton.constantino added inline comments. Comment at: clang/test/CodeGen/matrix-type-operators.c:303 } +// CHECK-LABEL: @divide_double_matrix_scalar_float( Shouldn't a test for half floating point be added here as well? Repository: rG LLVM Github Monorep

[PATCH] D97857: [Matrix] Add support for matrix-by-scalar division.

2021-03-10 Thread Everton Constantino via Phabricator via cfe-commits
everton.constantino added inline comments. Comment at: clang/test/CodeGen/matrix-type-operators.c:303 } +// CHECK-LABEL: @divide_double_matrix_scalar_float( fhahn wrote: > everton.constantino wrote: > > Shouldn't a test for half floating point be added here as

[PATCH] D99433: [Matrix] Including __builtin_matrix_multiply_add for the matrix type extension.

2021-03-26 Thread Everton Constantino via Phabricator via cfe-commits
everton.constantino created this revision. everton.constantino added reviewers: anemet, rjmccall, rsmith, Bigcheese, fhahn. Herald added subscribers: dexonsmith, tschuett, hiraditya. everton.constantino requested review of this revision. Herald added subscribers: llvm-commits, cfe-commits, jdoerfer

[PATCH] D99433: [Matrix] Including __builtin_matrix_multiply_add for the matrix type extension.

2021-03-26 Thread Everton Constantino via Phabricator via cfe-commits
everton.constantino added a comment. @jdoerfert Which tests do you have in mind? I added one for SEMA and one for CodeGen. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D99433/new/ https://reviews.llvm.org/D99433 __

[PATCH] D99433: [Matrix] Including __builtin_matrix_multiply_add for the matrix type extension.

2021-03-26 Thread Everton Constantino via Phabricator via cfe-commits
everton.constantino added a comment. @fhahn That was my first idea however its not as simple as it looks. I tried moving the adds but splats make it considerably harder to find a pattern that catches this and fuses the multiplies specially with bigger matrices. My real wish was to actually add

[PATCH] D99433: [Matrix] Including __builtin_matrix_multiply_add for the matrix type extension.

2021-03-31 Thread Everton Constantino via Phabricator via cfe-commits
everton.constantino added a comment. @fhahn When I mentioned the splats I was talking about the IR, not the final code. On the Godbolts links you sent, its the same that I see. However take a look into the IR your example generates: %vec.cast = bitcast [4 x float]* %A to <2 x float>* %col.l

[PATCH] D99433: [Matrix] Including __builtin_matrix_multiply_add for the matrix type extension.

2021-03-31 Thread Everton Constantino via Phabricator via cfe-commits
everton.constantino added a comment. @fhahn Ok I see what you mean now, this sounds like a doable path and might be able to cover architectures with specialized matrix multiplication instructions as well . Just to see if I understand correctly I can add a matrix_add intrinsic, do a travesal lo

[PATCH] D99433: [Matrix] Including __builtin_matrix_multiply_add for the matrix type extension.

2021-03-31 Thread Everton Constantino via Phabricator via cfe-commits
everton.constantino added a comment. In D99433#2662259 , @fhahn wrote: > In D99433#2661919 , > @everton.constantino wrote: > >> @fhahn Ok I see what you mean now, this sounds like a doable path and might >> be abl