[PATCH] D76794: [Matrix] Implement * binary operator for MatrixType.

2020-06-07 Thread Florian Hahn via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG4affc444b499: [Matrix] Implement * binary operator for MatrixType. (authored by fhahn). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D76794/new/ https://rev

[PATCH] D72778: [Matrix] Add __builtin_matrix_transpose to Clang.

2020-06-07 Thread Florian Hahn via Phabricator via cfe-commits
fhahn updated this revision to Diff 269050. fhahn added a comment. Simplify code as suggested, use DefaultLValueConversion instead of CheckPlaceholderExpr. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D72778/new/ https://reviews.llvm.org/D72778 F

[PATCH] D72778: [Matrix] Add __builtin_matrix_transpose to Clang.

2020-06-07 Thread Florian Hahn via Phabricator via cfe-commits
fhahn marked 4 inline comments as done. fhahn added inline comments. Comment at: clang/lib/Sema/SemaChecking.cpp:15051 + + Expr *Arg = TheCall->getArg(0); + if (!Arg->getType()->isConstantMatrixType()) { rjmccall wrote: > fhahn wrote: > > rjmccall wrote: > > >

[PATCH] D72781: [Matrix] Add __builtin_matrix_column_load to Clang.

2020-06-08 Thread Florian Hahn via Phabricator via cfe-commits
fhahn updated this revision to Diff 269249. fhahn added a comment. Ping. Applied feedback from D72778 to this patch, improved tests, support conversions/placeholders. One thing I am not sure is how to properly handle template substitutions for the pointer expr

[PATCH] D72778: [Matrix] Add __builtin_matrix_transpose to Clang.

2020-06-08 Thread Florian Hahn via Phabricator via cfe-commits
fhahn marked 2 inline comments as done. fhahn added inline comments. Comment at: clang/lib/Sema/SemaChecking.cpp:15051 + + Expr *Arg = TheCall->getArg(0); + if (!Arg->getType()->isConstantMatrixType()) { rjmccall wrote: > fhahn wrote: > > rjmccall wrote: > > >

[PATCH] D72781: [Matrix] Add __builtin_matrix_column_load to Clang.

2020-06-08 Thread Florian Hahn via Phabricator via cfe-commits
fhahn updated this revision to Diff 269363. fhahn added a comment. Updated to - use DefaultFunctionArrayLvalueConversion for pointer conversion, use getAs subsequently - return Context.DependentTy if any part of the result matrix type is still type-dependent - add assertion & todo for volatile

[PATCH] D72781: [Matrix] Add __builtin_matrix_column_load to Clang.

2020-06-08 Thread Florian Hahn via Phabricator via cfe-commits
fhahn marked 12 inline comments as done. fhahn added inline comments. Comment at: clang/lib/Sema/SemaChecking.cpp:15107 + { +ExprResult PtrConv = DefaultLvalueConversion(PtrExpr); +if (PtrConv.isInvalid()) rjmccall wrote: > You should be doing `DefaultFu

[PATCH] D72781: [Matrix] Add __builtin_matrix_column_load to Clang.

2020-06-08 Thread Florian Hahn via Phabricator via cfe-commits
fhahn updated this revision to Diff 269378. fhahn marked 5 inline comments as done. fhahn added a comment. Herald added a project: LLVM. Herald added a subscriber: llvm-commits. Simplified code as suggested, check if matrix type extensions is enabled (and add test) and set align attribute for poi

[PATCH] D72781: [Matrix] Add __builtin_matrix_column_load to Clang.

2020-06-08 Thread Florian Hahn via Phabricator via cfe-commits
fhahn marked 9 inline comments as done. fhahn added inline comments. Comment at: clang/include/clang/Basic/DiagnosticSemaKinds.td:10789 +def err_builtin_matrix_scalar_constant_unsigned_expr_arg: Error< + "%0 argument must be a constant unsigned integer expression">; + --

[PATCH] D72778: [Matrix] Add __builtin_matrix_transpose to Clang.

2020-06-09 Thread Florian Hahn via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG3323a628ec82: [Matrix] Add __builtin_matrix_transpose to Clang. (authored by fhahn). Changed prior to commit: https://reviews.llvm.org/D72778?vs=269050&id=269463#toc Repository: rG LLVM Github Monore

[PATCH] D72778: [Matrix] Add __builtin_matrix_transpose to Clang.

2020-06-09 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added a comment. In D72778#2080928 , @rjmccall wrote: > Yeah, that's fine. Thank you very much John! I filed https://bugs.llvm.org/show_bug.cgi?id=46251 to keep track of the initializer support, with a note on enabling the commented out test. R

[PATCH] D72781: [Matrix] Add __builtin_matrix_column_load to Clang.

2020-06-09 Thread Florian Hahn via Phabricator via cfe-commits
fhahn marked 3 inline comments as done. fhahn added inline comments. Comment at: clang/include/clang/Sema/Sema.h:12126 + ExprResult SemaBuiltinMatrixColumnMajorLoadOverload(CallExpr *TheCall, + ExprResult CallResult); --

[PATCH] D72781: [Matrix] Add __builtin_matrix_column_load to Clang.

2020-06-09 Thread Florian Hahn via Phabricator via cfe-commits
fhahn updated this revision to Diff 269556. fhahn marked 2 inline comments as done. fhahn added a comment. Adjust naming as suggested, pass through volatile flag. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D72781/new/ https://reviews.llvm.org/D72

[PATCH] D72781: [Matrix] Add __builtin_matrix_column_load to Clang.

2020-06-11 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added a comment. In D72781#2084077 , @rjmccall wrote: > LGTM. Thank you very much again John! This patch is pending on a few smallish improvements to the load/store intrinsics (D81472 ) and I'll land once that one

[PATCH] D72782: [Matrix] Add __builtin_matrix_column_store to Clang.

2020-06-17 Thread Florian Hahn via Phabricator via cfe-commits
fhahn updated this revision to Diff 271401. fhahn added a comment. Ping :) Rebased and applied feedback from D72781 . Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D72782/new/ https://reviews.llvm.org/D72782 Files:

[PATCH] D72781: [Matrix] Add __builtin_matrix_column_load to Clang.

2020-06-18 Thread Florian Hahn via Phabricator via cfe-commits
fhahn updated this revision to Diff 271613. fhahn added a comment. Rebased after recent parent patches landed. Will commit shortly. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D72781/new/ https://reviews.llvm.org/D72781 Files: clang/include/cla

[PATCH] D72782: [Matrix] Add __builtin_matrix_column_store to Clang.

2020-06-18 Thread Florian Hahn via Phabricator via cfe-commits
fhahn updated this revision to Diff 271617. fhahn added a comment. Rebased after recent changes landed upstream. Will commit shortly Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D72782/new/ https://reviews.llvm.org/D72782 Files: clang/include/cl

[PATCH] D72782: [Matrix] Add __builtin_matrix_column_store to Clang.

2020-06-18 Thread Florian Hahn via Phabricator via cfe-commits
fhahn marked an inline comment as done. fhahn added inline comments. Comment at: clang/include/clang/Basic/DiagnosticSemaKinds.td:10792 def err_builtin_matrix_pointer_arg: Error< - "%select{first|second}0 argument must be a pointer to a valid matrix element type">; + "%0 argu

[PATCH] D72781: [Matrix] Add __builtin_matrix_column_load to Clang.

2020-06-18 Thread Florian Hahn via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG934bcaf10b57: [Matrix] Add __builtin_matrix_column_load to Clang. (authored by fhahn). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D72781/new/ https://revi

[PATCH] D72782: [Matrix] Add __builtin_matrix_column_store to Clang.

2020-06-18 Thread Florian Hahn via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rGb5e082e72891: [Matrix] Add __builtin_matrix_column_store to Clang. (authored by fhahn). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D72782/new/ https://rev

[PATCH] D82928: [Coroutines] Fix code coverage for coroutine

2020-07-01 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added a comment. Looks like this causes a bunch of build bot failures, e.g http://lab.llvm.org:8011/builders/clang-x86_64-debian-fast/builds/31465 b It would be great if you could take a look. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D8

[PATCH] D80911: AArch64+ARM: make LLVM consider system registers volatile to prevent unsound optimizations.

2020-07-02 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added reviewers: fhahn, efriedma, hfinkel. fhahn added a comment. This seems similar to the problem described in https://bugs.llvm.org/show_bug.cgi?id=46210 : for intrinsics that are marked as reading memory, we do not account for the fact that the memory could be modified outside of the

[PATCH] D80911: AArch64+ARM: make LLVM consider system registers volatile to prevent unsound optimizations.

2020-07-03 Thread Florian Hahn via Phabricator via cfe-commits
fhahn accepted this revision. fhahn added a comment. This revision is now accepted and ready to land. As mentioned earlier, I think the patch is a nice, isolated fix for the `read_register` issue and it should not make addressing the bigger issue more difficult. LGTM, thanks! Repository: rG

[PATCH] D82213: [Remarks] Add callsite locations to inline remarks

2020-06-24 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added a comment. That's interesting. We are also using something similar for the matrix lowering remarks [1]: we traverse the inlining chain bottom up and emit a remark at each step which contains the expression available at that level. I think those approaches could be useful in general

[PATCH] D80279: [libclang] Extend clang_Cursor_Evaluate().

2020-06-24 Thread Florian Hahn via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG72131423cc95: [libclang] Extend clang_Cursor_Evaluate(). (authored by ckandeler, committed by fhahn). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D80279/new

[PATCH] D82473: [Matrix] Use 1st/2nd instead of first/second in matrix diags.

2020-06-24 Thread Florian Hahn via Phabricator via cfe-commits
fhahn created this revision. fhahn added reviewers: rjmccall, jfb, Bigcheese. Herald added subscribers: cfe-commits, tschuett, dexonsmith. Herald added a project: clang. This was suggested in D72782 and brings the diagnostics more in line with how argument refere

[PATCH] D82473: [Matrix] Use 1st/2nd instead of first/second in matrix diags.

2020-06-25 Thread Florian Hahn via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG043b60839955: [Matrix] Use 1st/2nd instead of first/second in matrix diags. (authored by fhahn). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D82473/new/ ht

[PATCH] D76612: [Matrix] Add draft specification for matrix support in Clang.

2020-04-16 Thread Florian Hahn via Phabricator via cfe-commits
fhahn updated this revision to Diff 258179. fhahn added a comment. Update wording to allow any real type for scalar -> matrix conversion and scalar,matrix binary ops. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D76612/new/ https://reviews.llvm.or

[PATCH] D76612: [Matrix] Add draft specification for matrix support in Clang.

2020-04-16 Thread Florian Hahn via Phabricator via cfe-commits
fhahn marked an inline comment as done. fhahn added inline comments. Comment at: clang/docs/MatrixTypes.rst:29 +A *matrix element type* must be a real type (as in C99 6.2.5p17) excluding +enumeration types or an implementation-defined half-precision floating point +type, otherwis

[PATCH] D76612: [Matrix] Add draft specification for matrix support in Clang.

2020-04-17 Thread Florian Hahn via Phabricator via cfe-commits
fhahn updated this revision to Diff 258269. fhahn marked 9 inline comments as done. fhahn added a comment. Update wordings as suggested, thanks! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D76612/new/ https://reviews.llvm.org/D76612 Files: clan

[PATCH] D76612: [Matrix] Add draft specification for matrix support in Clang.

2020-04-17 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added inline comments. Comment at: clang/docs/LanguageExtensions.rst:511 +*r = *a + (*b * *c); + } + rjmccall wrote: > This is kindof an unnecessarily unreadable example. I know you haven't > decided on calling convention treatment yet, but maybe th

[PATCH] D76612: [Matrix] Add draft specification for matrix support in Clang.

2020-04-24 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added a comment. ping. @rjmccall & @SjoerdMeijer thanks for all the comments. I hope they are no addressed adequately. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D76612/new/ https://reviews.llvm.org/D76612 _

[PATCH] D76612: [Matrix] Add draft specification for matrix support in Clang.

2020-04-24 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added a comment. Thanks, I plan to submit this on Monday and then make sure the patches on the clang side align with the draft. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D76612/new/ https://reviews.llvm.org/D76612 _

[PATCH] D76612: [Matrix] Add draft specification for matrix support in Clang.

2020-04-27 Thread Florian Hahn via Phabricator via cfe-commits
fhahn accepted this revision. fhahn added a comment. This revision is now accepted and ready to land. Mark as accepted to make Phabricator/arc happy Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D76612/new/ https://reviews.llvm.org/D76612 ___

[PATCH] D76612: [Matrix] Add draft specification for matrix support in Clang.

2020-04-27 Thread Florian Hahn via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rG7363ffe95f0a: [Matrix] Add draft specification for matrix support in Clang. (authored by fhahn). Changed prior to commit: https://reviews.llvm.org/D76612?vs=258269&id=260367#toc Repository: rG LLVM G

[PATCH] D72281: [Matrix] Add matrix type to Clang.

2020-04-27 Thread Florian Hahn via Phabricator via cfe-commits
fhahn updated this revision to Diff 260402. fhahn added a comment. Ping. Now that the draft specification is committed, I think it would be great if we could move on to review of the patches in detail. I've split the implementation into a few distinct parts (initial type support, [][] operators

[PATCH] D77378: [Clang] Include size and maximum in vector size error message.

2020-04-28 Thread Florian Hahn via Phabricator via cfe-commits
fhahn abandoned this revision. fhahn added a comment. With the recent size increase for vector dimensions I am not sure this is too useful. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D77378/new/ https://reviews.llvm.org/D77378 ___

[PATCH] D72281: [Matrix] Add matrix type to Clang.

2020-04-30 Thread Florian Hahn via Phabricator via cfe-commits
fhahn updated this revision to Diff 261313. fhahn marked 8 inline comments as done. fhahn added a comment. Addressed comments, thanks! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D72281/new/ https://reviews.llvm.org/D72281 Files: clang/include/

[PATCH] D72281: [Matrix] Add matrix type to Clang.

2020-04-30 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added inline comments. Comment at: clang/include/clang/AST/RecursiveASTVisitor.h:1274 + TRY_TO(TraverseType(TL.getTypePtr()->getElementType())); +}) + rjmccall wrote: > Might as well do this instead of accumulating the technical debt. > MatrixTypeLoc sho

[PATCH] D72281: [Matrix] Add matrix type to Clang.

2020-05-01 Thread Florian Hahn via Phabricator via cfe-commits
fhahn updated this revision to Diff 261476. fhahn added a comment. Switch mangling to use a vendor extended type qualifier, hoist code for loading/storing of matrix values to separate functions. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D72281/

[PATCH] D72281: [Matrix] Add matrix type to Clang.

2020-05-01 Thread Florian Hahn via Phabricator via cfe-commits
fhahn marked 2 inline comments as done. fhahn added inline comments. Comment at: clang/lib/AST/ItaniumMangle.cpp:3349 +void CXXNameMangler::mangleType(const MatrixType *T) { + Out << "Dm" << T->getNumRows() << "_" << T->getNumColumns() << '_'; + mangleType(T->getElementType());

[PATCH] D74436: Change clang option -ffp-model=precise to select ffp-contract=on

2020-08-03 Thread Florian Hahn via Phabricator via cfe-commits
fhahn reopened this revision. fhahn added a comment. This revision is now accepted and ready to land. IIUC the patch is currently reverted (in 78654e8511cf16d49f6680d782f3771a767ba942 ), due to ~20 llvm-test-suite failures. T

[PATCH] D74436: Change clang option -ffp-model=precise to select ffp-contract=on

2020-08-03 Thread Florian Hahn via Phabricator via cfe-commits
fhahn updated this revision to Diff 282577. fhahn added a comment. Rebase Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D74436/new/ https://reviews.llvm.org/D74436 Files: clang/docs/UsersManual.rst clang/lib/Driver/ToolChains/Clang.cpp clang/

[PATCH] D85473: [Clang] Add option to allow marking pass-by-value args as noalias.

2020-08-06 Thread Florian Hahn via Phabricator via cfe-commits
fhahn created this revision. fhahn added reviewers: rjmccall, rsmith, hfinkel, jfb. Herald added subscribers: dang, dexonsmith. Herald added a project: clang. fhahn requested review of this revision. After the recent discussion on cfe-dev 'Can indirect class parameters be noalias?' [1], it seems l

[PATCH] D85473: [Clang] Add option to allow marking pass-by-value args as noalias.

2020-08-07 Thread Florian Hahn via Phabricator via cfe-commits
fhahn updated this revision to Diff 283837. fhahn added a comment. Thanks for taking a look! I adjusted the LangOpts description and added the flag to f_Group, as suggested. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D85473/new/ https://reviews.

[PATCH] D84886: Create LoopNestPass

2020-08-12 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added a comment. In D84886#2212202 , @TaWeiTu wrote: > @ychen Again, thanks for your comment! > > 1. Currently, `LoopInterchange` returns immediately if the loop is not a > top-level one. The main purpose of the loop nest pass is to prevent > situa

[PATCH] D85473: [Clang] Add option to allow marking pass-by-value args as noalias.

2020-08-14 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added a comment. ping Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D85473/new/ https://reviews.llvm.org/D85473 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin

[PATCH] D72281: [Matrix] Add matrix type to Clang.

2020-05-04 Thread Florian Hahn via Phabricator via cfe-commits
fhahn marked an inline comment as done. fhahn added inline comments. Comment at: clang/include/clang/Basic/TypeNodes.td:73 def ExtVectorType : TypeNode; +def MatrixType : TypeNode; def FunctionType : TypeNode; rjmccall wrote: > I think some parts of your life m

[PATCH] D72281: [Matrix] Add matrix type to Clang.

2020-05-04 Thread Florian Hahn via Phabricator via cfe-commits
fhahn updated this revision to Diff 261911. fhahn marked 9 inline comments as done. fhahn added a comment. Address comments, thanks: - Use MatrixType as base class for ConstantMatrixType and DependentSizedMatrixType. - Handle both ConstantMatrixType and DependentSizedMatrixType arguments in ded

[PATCH] D72281: [Matrix] Add matrix type to Clang.

2020-05-04 Thread Florian Hahn via Phabricator via cfe-commits
fhahn updated this revision to Diff 261915. fhahn added a comment. Add missing early exit. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D72281/new/ https://reviews.llvm.org/D72281 Files: clang/include/clang/AST/ASTContext.h clang/include/clang

[PATCH] D72281: [Matrix] Add matrix type to Clang.

2020-05-05 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added inline comments. Comment at: clang/lib/AST/ASTContext.cpp:3846 + New = new (*this, TypeAlignment) DependentSizedMatrixType( + *this, ElementTy, QualType(Canon, 0), RowExpr, ColumnExpr, AttrLoc); + } else { rjmccall wrote: > Some of this

[PATCH] D72281: [Matrix] Add matrix type to Clang.

2020-05-05 Thread Florian Hahn via Phabricator via cfe-commits
fhahn updated this revision to Diff 262188. fhahn marked 9 inline comments as done. fhahn added a comment. Thanks for the extensive comments! They should be addressed: refactor dependent type construction, template argument deduction, adjust mangling. In D72281#2019417

[PATCH] D72281: [Matrix] Add matrix type to Clang.

2020-05-06 Thread Florian Hahn via Phabricator via cfe-commits
fhahn updated this revision to Diff 262413. fhahn marked 2 inline comments as done. fhahn added a comment. Fix template deduction. In D72281#2022004 , @rjmccall wrote: > > The type of m1 matches the matrix argument in all 3 definitions of > > use_matrix

[PATCH] D72281: [Matrix] Add matrix type to Clang.

2020-05-06 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added inline comments. Comment at: clang/lib/Sema/SemaTemplateDeduction.cpp:2112 + llvm::APSInt ArgRows(S.Context.getTypeSize(S.Context.IntTy), + ConstantMatrixArg->getNumRows()); + Result = DeduceNonTypeTemplateArgument(

[PATCH] D72281: [Matrix] Add matrix type to Clang.

2020-05-07 Thread Florian Hahn via Phabricator via cfe-commits
fhahn marked 4 inline comments as done. fhahn added inline comments. Comment at: clang/lib/Sema/SemaTemplateDeduction.cpp:2109 +if (!RowExprTemplateParam || !ColumnExprTemplateParam) + return Sema::TDK_Success; + rjmccall wrote: > fhahn wrote: >

[PATCH] D72281: [Matrix] Add matrix type to Clang.

2020-05-07 Thread Florian Hahn via Phabricator via cfe-commits
fhahn marked an inline comment as done. fhahn added inline comments. Comment at: clang/lib/Sema/SemaTemplateDeduction.cpp:2143 +return DeduceNonTypeTemplateArgument(S, TemplateParams, NTTP, + DimExpr, Info, Deduc

[PATCH] D72281: [Matrix] Add matrix type to Clang.

2020-05-07 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added inline comments. Comment at: clang/lib/Sema/SemaTemplateDeduction.cpp:2143 +return DeduceNonTypeTemplateArgument(S, TemplateParams, NTTP, + DimExpr, Info, Deduced); +} else if (const Const

[PATCH] D76791: [Matrix] Implement matrix index expressions ([][]).

2020-05-08 Thread Florian Hahn via Phabricator via cfe-commits
fhahn updated this revision to Diff 262893. fhahn added a comment. Rebase on top of the latest version of D72281 . Refactor code to re-use new address conversion helper. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org

[PATCH] D76793: [Matrix] Implement + and - operators for MatrixType.

2020-05-08 Thread Florian Hahn via Phabricator via cfe-commits
fhahn updated this revision to Diff 262901. fhahn added a comment. Rebase on top of the final version of D72281 . I think this patch is now ready for review. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D76793/new/

[PATCH] D72778: [Matrix] Add __builtin_matrix_transpose to Clang.

2020-05-13 Thread Florian Hahn via Phabricator via cfe-commits
fhahn updated this revision to Diff 263878. fhahn added a comment. ping. Simplify code, extend tests. This should now be ready for review. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D72778/new/ https://reviews.llvm.org/D72778 Files: clang/incl

[PATCH] D72781: [Matrix] Add __builtin_matrix_column_load to Clang.

2020-05-13 Thread Florian Hahn via Phabricator via cfe-commits
fhahn updated this revision to Diff 263879. fhahn edited the summary of this revision. fhahn added a comment. ping. Simplify code, extend tests. This should now be ready for review. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D72781/new/ https://r

[PATCH] D72782: [Matrix] Add __builtin_matrix_column_store to Clang.

2020-05-13 Thread Florian Hahn via Phabricator via cfe-commits
fhahn updated this revision to Diff 263880. fhahn added a comment. ping. Simplify code, extend tests. This should now be ready for review. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D72782/new/ https://reviews.llvm.org/D72782 Files: clang/incl

[PATCH] D76791: [Matrix] Implement matrix index expressions ([][]).

2020-05-14 Thread Florian Hahn via Phabricator via cfe-commits
fhahn updated this revision to Diff 264094. fhahn added a comment. Update to support non-constant-integer-expressions as indices. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D76791/new/ https://reviews.llvm.org/D76791 Files: clang/include/clang

[PATCH] D76793: [Matrix] Implement + and - operators for MatrixType.

2020-05-18 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added a comment. ping :) this patch should be ready to be reviewed independently (it's marked as dependent on D76791 in Phab, but it can be applied independently and changing the relationship in Phab will trigger a bunch of unnecessary emails) Reposito

[PATCH] D40299: [Complex] Don't use __div?c3 when building with fast-math.

2017-11-28 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added reviewers: arphaman, GorNishanov, hfinkel, fhahn. fhahn added a comment. Looks good to me, with some nits. However it seems that we do not use the fast math flags anywhere else in Clang codegen, so it would be good to clarify if it is OK to use it here. Comment at

[PATCH] D113779: [Clang] Add mfp16, mfp16fml and mdotprod flags for ARM target features.

2022-09-07 Thread Florian Hahn via Phabricator via cfe-commits
fhahn updated this revision to Diff 458407. fhahn added a comment. Rebase and ping :) The potential benefit of having -m flags is also mentioned in this recent bug report: https://github.com/llvm/llvm-project/issues/57588 Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https

[PATCH] D102494: [Clang, Driver] Default to Darwin_libsystem_m veclib on iOS based targets.

2022-09-13 Thread Florian Hahn via Phabricator via cfe-commits
fhahn abandoned this revision. fhahn added a comment. Herald added a subscriber: MaskRay. Herald added a project: All. As of now, I don't think this is safe to do with the precision guarantees Darwin_libsystem_m provides unfortunately. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST A

[PATCH] D133737: [HLSL] [clang] Add vector version of abs for HLSL

2022-09-13 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added a comment. I'm not familiar with HLSL but I think making use of the existing vector builtins makes sense here! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D133737/new/ https://reviews.llvm.org/D133737

[PATCH] D32199: [TySan] A Type Sanitizer (Clang)

2022-06-27 Thread Florian Hahn via Phabricator via cfe-commits
fhahn updated this revision to Diff 440264. fhahn added a comment. rebased Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D32199/new/ https://reviews.llvm.org/D32199 Files: clang/include/clang/Basic/Features.def clang/include/clang/Basic/Sanitiz

[PATCH] D129231: [Builtins] Do not claim all libfuncs are readnone with trapping math.

2022-07-06 Thread Florian Hahn via Phabricator via cfe-commits
fhahn created this revision. fhahn added reviewers: kpn, efriedma, scanon, john.brawn, sepavloff. Herald added a project: All. fhahn requested review of this revision. Herald added a project: clang. At the moment, Clang only considers errno when deciding if a builtin is const. This ignores the fac

[PATCH] D122573: [TBAA] Emit distinct TBAA tags for pointers with different depths,types.

2022-03-28 Thread Florian Hahn via Phabricator via cfe-commits
fhahn created this revision. fhahn added reviewers: rjmccall, aaron.ballman, scanon, rsmith, hfinkel. Herald added subscribers: jeroen.dobbelaere, kosarev. Herald added a project: All. fhahn requested review of this revision. Herald added a project: clang. This patch extends Clang's TBAA generatio

[PATCH] D122573: [TBAA] Emit distinct TBAA tags for pointers with different depths,types.

2022-03-29 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added a comment. In D122573#3412109 , @rjmccall wrote: > Hmm. We know that the big picture here, distinguishing pointers by pointee > type, is going to be disruptive and will probably need a specific > enabling/disabling option. I'm not sure tha

[PATCH] D32199: [TySan] A Type Sanitizer (Clang)

2022-03-29 Thread Florian Hahn via Phabricator via cfe-commits
fhahn updated this revision to Diff 418961. fhahn added a comment. Herald added a subscriber: MaskRay. Herald added a project: All. I rebased the patch and added new pm support based on the latest version of D32198 Repository: rG LLVM Github Monorepo CHANGES

[PATCH] D128955: [WPD] Use new llvm.public.type.test intrinsic for potentially publicly visible classes

2022-07-26 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added a comment. In D128955#3679418 , @tejohnson wrote: > lgtm > > In D128955#3676478 , @aeubanks > wrote: > >> In D128955#3676198 , @tejohnson >> wrote: >> >>> In

[PATCH] D129231: [Builtins] Do not claim all libfuncs are readnone with trapping math.

2022-07-29 Thread Florian Hahn via Phabricator via cfe-commits
fhahn updated this revision to Diff 448628. fhahn added a comment. In D129231#3638946 , @john.brawn wrote: > Looking at the descriptions of maths functions in C99 (and I expect C11 will > be the same) it looks like there are three kinds: > > - Those t

[PATCH] D130268: [NFC] Add SmallVector constructor to allow creation of SmallVector from ArrayRef of items convertible to type T

2022-08-04 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added a comment. Looks like a nice improvement, thanks! Comment at: llvm/unittests/ADT/SmallVectorTest.cpp:867 - template - static unsigned NumBuiltinElts(const SmallVector&) { return N; } }; This seems like an unrelated change unless I am missing som

[PATCH] D122768: [Clang][C++20] Support capturing structured bindings in lambdas

2022-08-04 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added a comment. In D122768#3700486 , @cor3ntin wrote: > In D122768#3700451 , @aeubanks > wrote: > >> in the commit message >> >> In addition, capturing an anonymous union member, >> a bitfield, or a st

[PATCH] D129231: [Builtins] Do not claim all libfuncs are readnone with trapping math.

2022-08-05 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added a comment. ping :) Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D129231/new/ https://reviews.llvm.org/D129231 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cg

[PATCH] D106005: [Docs] Define matrix initialisation in MatrixTypes documentation

2021-07-20 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added inline comments. Comment at: clang/docs/MatrixTypes.rst:271 +- +An empty value of a matrix type M can be initialised using this syntax: + is there a reason we need to allow 'empty' initialisation? What does it mean? Repository:

[PATCH] D106005: [Docs] Define matrix initialisation in MatrixTypes documentation

2021-07-22 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added a comment. Thank you very much for working on this! Are you planning on implementing the new specification as well? It would probably be good to land the update to the spec in close succession to the implementation, to avoid confusing users. Comment at: clang/docs

[PATCH] D106005: [Docs] Define matrix initialisation in MatrixTypes documentation

2021-07-26 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added a comment. In D106005#2896080 , @SaurabhJha wrote: > In D106005#2895716 , @fhahn wrote: > >> Thank you very much for working on this! Are you planning on implementing >> the new specification as well

[PATCH] D117829: [Clang] Add integer add/mul reduction builtins

2022-03-16 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added a comment. Herald added a project: All. @RKSimon are you planning on pushing this patch through? From my perspective, it looks good with splitting off `__builtin_reduce_mul` and adding a TODO to also implement it for floating point types. Repository: rG LLVM Github Monorepo CHAN

[PATCH] D118259: [AArch64] Adjust aarch64-neon-intrinsics-constrained test and un-XFAIL

2022-03-17 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added a comment. In D118259#3343554 , @john.brawn wrote: > In D118259#3275297 , @fhahn wrote: > >> Does this clang test actually need to check the generated assembly? >> Shouldn't it be enough to check tha

[PATCH] D118259: [AArch64] Adjust aarch64-neon-intrinsics-constrained test and un-XFAIL

2022-03-17 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added a comment. In D118259#3389235 , @kpn wrote: > It's been a while, but I think the aarch64-neon-intrinsics-constrained.c test > is trimmed down from the aarch64-neon-intrinsics.c test. Shouldn't the > constrained and non-constrained end-to-end

[PATCH] D115907: [misexpect] Re-implement MisExpect Diagnostics

2022-03-18 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added a comment. The test also failed in the Phabricator pre-commit CI, please keep an eye on it before re-submitting (failure link for latest diff was https://buildkite.com/llvm-project/premerge-checks/builds/83983#39c06525-7452-412d-af83-ae2cc2d30cdc) Repository: rG LLVM Github Monor

[PATCH] D117829: [Clang] Add integer add/mul reduction builtins

2022-03-21 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added a comment. In D117829#3389241 , @RKSimon wrote: > In D117829#3386398 , @fhahn wrote: > >> @RKSimon are you planning on pushing this patch through? From my >> perspective, it looks good with splitting

[PATCH] D123601: [clang][AArch64] Split neon tests into 2 files

2022-04-13 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added a comment. In D123601#3445601 , @tstellar wrote: > Can't we add a timeout exception for this test in buildkite? Splitting the > file in two actually increases the runtime, due to the overhead of setting up > each test. I don't know, this i

[PATCH] D123601: [clang][AArch64] Split neon tests into 2 files

2022-04-13 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added a comment. (splitting up huge monolithic tests likely also speeds up overall testing time on multi-core systems) Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D123601/new/ https://reviews.llvm.org/D123601 __

[PATCH] D123300: [Clang] Enable opaque pointers by default

2022-04-15 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added a comment. In D123300#3454215 , @aeubanks wrote: > $ cat /tmp/a.ll > target triple = "thumbv8-unknown-linux-gnueabihf" > > define void @zot() { > bb: > br label %bb1 > > bb1: ;

[PATCH] D122983: [C11/C2x] Change the behavior of the implicit function declaration warning

2022-04-21 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added a comment. In D122983#3464331 , @xbolva00 wrote: > In D122983#3464315 , @aaron.ballman > wrote: > >> In D122983#3463561 , @MaskRay >> wrote: >> >>> Adding a

[PATCH] D119926: [Clang][AArch64] Enable _Float16 _Complex type

2022-02-16 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added a reviewer: aaron.ballman. fhahn added inline comments. Comment at: clang/test/CodeGen/aarch64-complex-half-math.c:1 +// RUN: %clang_cc1 %s -O1 -emit-llvm -triple aarch64-unknown-unknown -ffast-math -o - | FileCheck %s --check-prefix=AARCH64 + peterw

[PATCH] D69740: [profile] Support counter relocation at runtime

2022-04-28 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added inline comments. Herald added subscribers: abrachet, MaskRay. Herald added a project: All. Comment at: llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp:673 +auto *Add = Builder.CreateAdd(Builder.CreatePtrToInt(Addr, Int64Ty), LI); +Addr = Builder.CreateI

[PATCH] D117829: [Clang] Add integer add/mul reduction builtins

2022-05-01 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added a comment. > @fhahn Remind me - why did you want me to split these? If we're initially > just going for integer support, can't both be done at the same time in this > patch? I think my original thinking was that `__builtin_reduce_mul` isn't defined at the moment https://clang.llvm.

[PATCH] D124741: [Clang] Add integer add reduction builtin

2022-05-01 Thread Florian Hahn via Phabricator via cfe-commits
fhahn accepted this revision. fhahn added a comment. This revision is now accepted and ready to land. LGTM, thanks > For other reductions, we've tried to share builtins for float/integer > vectors, but the fadd reduction builtins also take a starting value argument. > Technically I could suppor

[PATCH] D117829: [Clang] Add integer mul reduction builtin

2022-05-05 Thread Florian Hahn via Phabricator via cfe-commits
fhahn accepted this revision. fhahn added a comment. This revision is now accepted and ready to land. LGTM, thanks! IIRC @scanon had some opinions about `__builtin_reduce_mul` during some earlier discussions. Please wait a few days in case there are additional comments. Repository: rG LLVM G

[PATCH] D113779: [Clang] Add mfp16, mfp16fml and mdotprod flags for ARM target features.

2022-05-06 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added a comment. Herald added a subscriber: MaskRay. Herald added a project: All. In D113779#3207936 , @SjoerdMeijer wrote: >> If anybody has contacts to GCC that would be very helpful. Unfortunately I >> don't think I will be able to drive this.

[PATCH] D128927: [libc++] Always build c++experimental.a

2022-07-13 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added a comment. It looks like this is causing macOS builds to fail on GreenDragon. Please take a look and refer the commit if it takes longer to resolve, as the bot has been red for a while now. [3495/5980] /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain

[PATCH] D124699: [DeadArgElim] Set unused arguments for internal functions

2022-05-11 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added a comment. In D124699#3507250 , @qcolombet wrote: > Thanks @thakis ! > > @fhahn are you okay with the clang tests update as well? Yes looks good, thanks! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llv

[PATCH] D122126: [LoopVectorize] Don't interleave when the number of runtime checks exceeds the threshold

2022-05-12 Thread Florian Hahn via Phabricator via cfe-commits
fhahn accepted this revision. fhahn added a comment. LGTM with additional suggestions inline, thanks! Comment at: llvm/lib/Transforms/Vectorize/LoopVectorize.cpp:10462 +} else { + ORE->emit([&]() { +return OptimizationRemarkAnalysisAliasing( I

[PATCH] D122126: [LoopVectorize] Don't interleave when the number of runtime checks exceeds the threshold

2022-05-16 Thread Florian Hahn via Phabricator via cfe-commits
fhahn accepted this revision. fhahn added a comment. Still LGTM, thanks! The remaining suggestion can be addressed directly before committing the patch. Comment at: llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h:324 + /// Check if the number of runtime checks exceed

<    1   2   3   4   5   6   7   8   >