[PATCH] D112932: Use llvm.is_fpclass to implement FP classification functions

2023-01-11 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. This change itself LGTM but I think it should wait until after we get more optimizations in to go back to fcmp, and after the release branch Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D112932/new/ https://reviews.llvm.org

[PATCH] D141449: clang/OpenCL: Fix not setting convergent on block invoke kernels

2023-01-11 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added inline comments. Comment at: clang/lib/CodeGen/TargetInfo.cpp:12428 F->addFnAttr(llvm::Attribute::NoUnwind); + F->addFnAttr(llvm::Attribute::Convergent); yaxunl wrote: > How about using CGF.CGM.addDefaultFunctionDefinitionAttributes? same as be

[PATCH] D137269: [Clang][AArch64][Darwin] Enable GlobalISel by default for Darwin ARM64 platforms.

2022-11-02 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added inline comments. Comment at: clang/lib/Driver/ToolChains/Clang.cpp:7218-7219 + CmdArgs.push_back("-global-isel=1"); + CmdArgs.push_back("-mllvm"); + CmdArgs.push_back("-global-isel-abort=0"); +} Why abort=0? I can understand abort=

[PATCH] D137269: [Clang][AArch64][Darwin] Enable GlobalISel by default for Darwin ARM64 platforms.

2022-11-02 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added inline comments. Comment at: clang/lib/Driver/ToolChains/Darwin.cpp:388 + options::OPT_fno_global_isel); +if (!A || !A->getOption().matches(options::OPT_fno_global_isel)) { CmdArgs.push_back("-mllvm"); Actually

[PATCH] D137154: Adding nvvm_reflect clang builtin

2022-11-03 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. In D137154#3905711 , @yaxunl wrote: > LLVM does not maintain bitcode backward compatibility between major releases. > How do you make sure the clang/LLVM you are using is compatible with > libdevice? Yes it does? We support bitc

[PATCH] D137524: clang/AMDGPU: Emit atomicrmw for atomic_inc/dec builtins

2022-11-06 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm created this revision. arsenm added reviewers: yaxunl, AMDGPU. Herald added subscribers: kosarev, Anastasia, tpr, dstuttard, jvesely, kzhuravl. Herald added a project: All. arsenm requested review of this revision. Herald added a subscriber: wdng. This makes the scope and ordering arguments

[PATCH] D137516: [TargetSupport] Move TargetParser API in a separate LLVM component.

2022-11-06 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. I think this is fine, but think the name needs to be bikeshedded. "Target" and "Support" are already overloaded enough as it is. Is there anything else that would really ever go into this library? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https:

[PATCH] D137269: [Clang][AArch64][Darwin] Enable GlobalISel by default for Darwin ARM64 platforms.

2022-11-10 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. In D137269#3916911 , @fhahn wrote: > It looks like GISel crashes when building `llvm-test-suite` with -O3 on > ARM64. If it isn't trivial to fix we should probably revert the patch to > bring things back to green. > > Reproducer:

[PATCH] D84743: [Clang][AMDGCN] Universal device offloading macros header

2022-11-11 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. Herald added subscribers: kosarev, StephenFan. Herald added a project: All. Is this still relevant? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D84743/new/ https://reviews.llvm.org/D84743 __

[PATCH] D137874: clang/AMDGPU: Use Support's wrapper around getenv

2022-11-11 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm created this revision. arsenm added a reviewer: yaxunl. Herald added subscribers: kosarev, kerbowa, tpr, dstuttard, jvesely, kzhuravl. Herald added a project: All. arsenm requested review of this revision. Herald added subscribers: MaskRay, wdng. This does some extra stuff for Windows, so m

[PATCH] D137875: clang/AMDGPU: Drop volatile from builtin_atomic* pointers

2022-11-11 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm created this revision. arsenm added a reviewer: yaxunl. Herald added subscribers: kosarev, kerbowa, tpr, dstuttard, jvesely, kzhuravl. Herald added a project: All. arsenm requested review of this revision. Herald added a subscriber: wdng. The codegen takes the volatileness from the used val

[PATCH] D137874: clang/AMDGPU: Use Support's wrapper around getenv

2022-11-14 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm closed this revision. arsenm added a comment. 840a793375fec763c2b2781b82b764325635cc7a CHANGES SINCE LAST ACTION https://reviews.llvm.org/D137874/new/ https://reviews.llvm.org/D137874 __

[PATCH] D135488: [codegen] Display stack layouts in console

2022-11-15 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. In D135488#3928557 , @nickdesaulniers wrote: > Can we add a `Note` diagnostic when we emit a `-Wframe-larger-than=` that > alludes to re-running with `-mllvm -print-stack-frame` to get additional info? > > We should update the re

[PATCH] D135488: [codegen] Display stack layouts in console

2022-11-15 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. In D135488#3928567 , @nickdesaulniers wrote: > In D135488#3928559 , @arsenm wrote: > >> In D135488#3928557 , >> @nickdesaulniers wrote: >> >>> Ca

[PATCH] D138078: [CodeGenPrepare] split critical indirect edges from callbr w/ outputs

2022-11-15 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added inline comments. Comment at: clang/docs/ReleaseNotes.rst:187 + two inputs may have compared equal in the inline assembly. This is no longer + garunteed (and necessary to support outputs along indirect edges, which is + still not yet supported). T

[PATCH] D135488: [codegen] Display stack layouts in console

2022-11-15 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. The kernel resource remarks added in 67357739c6d36a61972c1fc0e829e35cb5375279 are probably the current heaviest remarks. I believe there were some changes to newline handling for it Repository: rG

[PATCH] D138094: [LoongArch] Add intrinsics for ibar, break and syscall

2022-11-15 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added inline comments. Comment at: clang/include/clang/Basic/BuiltinsLoongArch.def:20-23 TARGET_BUILTIN(__builtin_loongarch_dbar, "vIUi", "nc", "") +TARGET_BUILTIN(__builtin_loongarch_ibar, "vIUi", "nc", "") +TARGET_BUILTIN(__builtin_loongarch_break, "vIUi", "nc", "") +TA

[PATCH] D137875: clang/AMDGPU: Drop volatile from builtin_atomic* pointers

2022-11-16 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. ping CHANGES SINCE LAST ACTION https://reviews.llvm.org/D137875/new/ https://reviews.llvm.org/D137875 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D80416: [RFC][OpenCL] Set fp contract flag on -cl-mad-enable

2022-11-16 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. Herald added a subscriber: Naghasan. Herald added a project: All. Was this addressed already? Today it looks like we have: if (Opts.FastRelaxedMath || Opts.CLUnsafeMath) Opts.setDefaultFPContractMode(LangOptions::FPM_Fast); CHANGES SINCE LAST ACTION https://revie

[PATCH] D138078: [CodeGenPrepare] split critical indirect edges from callbr w/ outputs

2022-11-16 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. To me it sounds like the kind of issue we deal with in FinalizeISel to hack around dag limitations Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D138078/new/ https://reviews.llvm.org/D138078

[PATCH] D128700: [AMDGPU][Clang] Skip adding noundef attribute to AMDGPU HIP device functions

2022-11-16 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm resigned from this revision. arsenm added a comment. This is now obsolete Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D128700/new/ https://reviews.llvm.org/D128700 ___ cfe-commits mailing list cf

[PATCH] D124158: [Clang][Attr] Skip adding noundef attribute to arguments when function has convergent attribute

2022-11-16 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm resigned from this revision. arsenm added a comment. Herald added a subscriber: kosarev. This is obsolete and can be abandoned Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D124158/new/ https://reviews.llvm.org/D124158 __

[PATCH] D135488: [codegen] Display stack layouts in console

2022-11-16 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. In D135488#3929537 , @arsenm wrote: > The kernel resource remarks added in 67357739c6d36a61972c1fc0e829e35cb5375279 > are > probably the current heaviest remar

[PATCH] D88978: [WIP] Attach debug intrinsics to allocas, and use correct address space

2022-11-16 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. Herald added a project: All. Is this still needed? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D88978/new/ https://reviews.llvm.org/D88978 ___ cfe-commits mailing list cfe-commit

[PATCH] D142499: [Clang][AMDGPU] Set LTO CG opt level based on Clang option

2023-01-24 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. Making this target specific doesn’t make sense Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D142499/new/ https://reviews.llvm.org/D142499 ___ cfe-commits mailing list cfe-commits@

[PATCH] D142491: [OpenMP] Do not link the bitcode OpenMP runtime when targeting AMDGPU.

2023-01-24 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. Well the library still doesn't 100% work unless using -mlink-builtin-bitcode. It's taking forever to make progress on fixing that Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D142491/new/ https://reviews.llvm.org/D142491 _

[PATCH] D142506: [AMDGCN] Fix device lib test to work with lib64

2023-01-24 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. The resource directory should be strictly controlled. why would lib64 ever be used here? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D142506/new/ https://reviews.llvm.org/D142506 __

[PATCH] D142506: [AMDGCN] Fix device lib test to work with lib64

2023-01-25 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. In D142506#4078532 , @scchan wrote: > In D142506#4078402 , @arsenm wrote: > >> The resource directory should be strictly controlled. why would lib64 ever >> be used here? > > The intention

[PATCH] D142569: [WIP][OpenMP] Introduce kernel argument

2023-01-25 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. Description not clear Comment at: llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp:3912-3914 + Constant *KernelEnvironmentCasted = + ConstantExpr::getPointerBitCastOrAddrSpaceCast(KernelEnvironment, + Ke

[PATCH] D142459: [clang] Deprecate uses of GlobalObject::getAlignment

2023-01-25 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added inline comments. Comment at: clang/lib/CodeGen/CGCUDANV.cpp:491 new llvm::LoadInst(Var->getType(), ManagedVar, "ld.managed", false, - llvm::Align(Var->getAlignment()), I); + Var->getAlign().valueOrOne

[PATCH] D142823: Intrinsics: Allow tablegen to mark parameters with dereferenceable

2023-01-28 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm created this revision. arsenm added reviewers: sstefan1, jdoerfert, yaxunl, AMDGPU, nikic, alexander-shaposhnikov. Herald added subscribers: kosarev, StephenFan, kerbowa, jvesely. Herald added a project: All. arsenm requested review of this revision. Herald added a subscriber: wdng. Herald

[PATCH] D141449: clang/OpenCL: Fix not setting convergent on block invoke kernels

2023-01-30 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. ping CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141449/new/ https://reviews.llvm.org/D141449 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D141620: clang/OpenCL: Apply default attributes to enqueued blocks

2023-01-30 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. ping CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141620/new/ https://reviews.llvm.org/D141620 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D141447: clang/OpenCL: Don't use a Function for the block type

2023-01-30 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. ping CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141447/new/ https://reviews.llvm.org/D141447 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D141447: clang/OpenCL: Don't use a Function for the block type

2023-01-30 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added inline comments. Comment at: clang/lib/CodeGen/TargetInfo.cpp:12477-12480 + F->setCallingConv(llvm::CallingConv::AMDGPU_KERNEL); + + // FIXME: Apply default attributes + F->addFnAttr(llvm::Attribute::NoUnwind); yaxunl wrote: > need a test It's alr

[PATCH] D141620: clang/OpenCL: Apply default attributes to enqueued blocks

2023-01-30 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added inline comments. Comment at: clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl:381 +// GFX900-LABEL: define {{[^@]+}}@callee +// GFX900-SAME: (i64 noundef [[ID:%.*]], ptr addrspace(1) noundef [[OUT:%.*]]) #[[ATTR1:[0-9]+]] { +// GFX900-NEXT: entry:

[PATCH] D142907: LangRef: Add "dynamic" option to "denormal-fp-math"

2023-01-30 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm created this revision. arsenm added reviewers: scanon, spatel, cameron.mcinally, andrew.w.kaylor, tra, jlebar, Anastasia, yaxunl, efriedma, jcranmer-intel, kpn, sepavloff. Herald added subscribers: kosarev, foad, StephenFan, wenlei, jdoerfert, kerbowa, pengfei, hiraditya, jvesely. Herald a

[PATCH] D141447: clang/OpenCL: Don't use a Function for the block type

2023-01-30 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm closed this revision. arsenm added a comment. 52c28d7cf9018f3558268217f6cf91271eb4ac39 CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141447/new/ https://reviews.llvm.org/D141447 __

[PATCH] D141449: clang/OpenCL: Fix not setting convergent on block invoke kernels

2023-01-30 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm closed this revision. arsenm added a comment. 00f6a7f02f9c8d542ce8ff1c9c037d9fdb421b88 CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141449/new/ https://reviews.llvm.org/D141449 __

[PATCH] D141620: clang/OpenCL: Apply default attributes to enqueued blocks

2023-01-30 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm closed this revision. arsenm added a comment. 647925648a0fde06b5b44086843f0d8f164a71df CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141620/new/ https://reviews.llvm.org/D141620 __

[PATCH] D142934: clang: Use ptrmask for pointer alignment

2023-01-30 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm created this revision. arsenm added reviewers: spetrovic, nemanjai, rjmccall, hfinkel, fhahn. Herald added subscribers: StephenFan, kbarton, arichardson. Herald added a project: All. arsenm requested review of this revision. Herald added a subscriber: wdng. Avoid using ptrtoint/inttoptr.

[PATCH] D142823: Intrinsics: Allow tablegen to mark parameters with dereferenceable

2023-01-31 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm updated this revision to Diff 493566. arsenm added a comment. Revert implicitarg.ptr changes since not-HSA has different alignment for no reason. Also with the size differences between amdhsa and different CO versions we're already wrong for emitting 256 unconditionally CHANGES SINCE LA

[PATCH] D142823: Intrinsics: Allow tablegen to mark parameters with dereferenceable

2023-01-31 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. In D142823#4093357 , @foad wrote: > I think the tablegen functionality should be a separate patch from the amdgpu > changes. Maybe, but then it’s untested in the patch which adds it CHANGES SINCE LAST ACTION https://reviews.l

[PATCH] D142907: LangRef: Add "dynamic" option to "denormal-fp-math"

2023-01-31 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm marked 2 inline comments as done. arsenm added inline comments. Comment at: clang/lib/CodeGen/CGCall.cpp:2059-2061 + F.removeFnAttrs(AttrsToRemove); + addDenormalModeAttrs(Merged, MergedF32, FuncAttrs); + F.addFnAttrs(FuncAttrs); tra wrote: > IIUIC, thi

[PATCH] D142907: LangRef: Add "dynamic" option to "denormal-fp-math"

2023-01-31 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm marked an inline comment as done. arsenm added inline comments. Comment at: clang/lib/CodeGen/CGCall.cpp:2059-2061 + F.removeFnAttrs(AttrsToRemove); + addDenormalModeAttrs(Merged, MergedF32, FuncAttrs); + F.addFnAttrs(FuncAttrs); arsenm wrote: > tra wro

[PATCH] D142907: LangRef: Add "dynamic" option to "denormal-fp-math"

2023-01-31 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm updated this revision to Diff 493639. arsenm added a comment. Fix losing target-cpu CHANGES SINCE LAST ACTION https://reviews.llvm.org/D142907/new/ https://reviews.llvm.org/D142907 Files: clang/lib/CodeGen/CGCall.cpp clang/lib/CodeGen/CodeGenAction.cpp clang/lib/CodeGen/CodeGenM

[PATCH] D142907: LangRef: Add "dynamic" option to "denormal-fp-math"

2023-01-31 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm updated this revision to Diff 493653. arsenm added a comment. Fix dropping target-cpu. Also skip interposable functions if we aren't internalizing (this seems to be a theoretical concern, since PropagateAttrs and Internalize are set as a pair) CHANGES SINCE LAST ACTION https://reviews

[PATCH] D142999: [Clang] Adjust PIC handling for the AMDGPU ToolChain

2023-01-31 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm accepted this revision. arsenm added a comment. This revision is now accepted and ready to land. I don't understand how the PIC options are supposed to propagate given that codegen seems to still use magic flags but removing a special case seems good Comment at: clang/l

[PATCH] D142907: LangRef: Add "dynamic" option to "denormal-fp-math"

2023-02-01 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm marked an inline comment as done. arsenm added inline comments. Comment at: llvm/test/Transforms/Inline/AMDGPU/inline-denormal-fp-math.ll:78 +; CHECK-NEXT:[[CALL:%.*]] = call i32 @func_default() +; CHECK-NEXT:ret i32 [[CALL]] ; kpn wrote: > Are we

[PATCH] D142907: LangRef: Add "dynamic" option to "denormal-fp-math"

2023-02-02 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm updated this revision to Diff 494417. arsenm edited the summary of this revision. arsenm added a comment. Herald added a subscriber: tpr. Address comments CHANGES SINCE LAST ACTION https://reviews.llvm.org/D142907/new/ https://reviews.llvm.org/D142907 Files: clang/lib/CodeGen/CGCall

[PATCH] D143111: [HIP] Support ASAN with malloc/free

2023-02-02 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added inline comments. Comment at: clang/test/Headers/hip-header.hip:142 +// MALLOC-ASAN-LABEL: define weak {{.*}}i8* @malloc(i64 +// MALLOC-ASAN: call i8* @llvm.returnaddress(i32 0) +// MALLOC-ASAN: call i64 @__asan_malloc_impl(i64 {{.*}}, i64 {{.*}}) S

[PATCH] D142907: LangRef: Add "dynamic" option to "denormal-fp-math"

2023-02-02 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm updated this revision to Diff 494465. arsenm marked 2 inline comments as done. arsenm added a comment. Documentation fixes CHANGES SINCE LAST ACTION https://reviews.llvm.org/D142907/new/ https://reviews.llvm.org/D142907 Files: clang/lib/CodeGen/CGCall.cpp clang/lib/CodeGen/CodeGen

[PATCH] D142393: [OpenMP] Add 'amdgpu-flat-work-group-size' to OpenMP kernels

2023-02-02 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added inline comments. Comment at: clang/include/clang/Basic/LangOptions.def:271 LANGOPT(GPUAllowDeviceInit, 1, 0, "allowing device side global init functions for HIP") -LANGOPT(GPUMaxThreadsPerBlock, 32, 1024, "default max threads per block for kernel launch bounds for

[PATCH] D141447: clang/OpenCL: Don't use a Function for the block type

2023-01-11 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. In D141447#4042273 , @yaxunl wrote: > need a test This is NFC, this is just fixing the API for the next commit I haven't posted yet CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141447/new/ https://reviews.llvm.org/D14

[PATCH] D141543: [LinkerWrapper] Emit assembly files from LTO with `save-temps`

2023-01-11 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added inline comments. Comment at: clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp:531-537 + CmdArgs.push_back(*ClangPath); + CmdArgs.push_back("-o"); + CmdArgs.push_back(*TempFileOrErr); + CmdArgs.push_back("-fPIC"); + CmdArgs.push_back("-c"); + CmdArgs.push

[PATCH] D141543: [LinkerWrapper] Emit assembly files from LTO with `save-temps`

2023-01-11 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. Missing test? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141543/new/ https://reviews.llvm.org/D141543 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm

[PATCH] D141451: [clang] report inlining decisions with -Wattribute-{warning|error}

2023-01-11 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added inline comments. Comment at: llvm/lib/Transforms/Utils/InlineFunction.cpp:2467-2468 + +const Function *Callee = CI->getCalledFunction(); +if (Callee && (Callee->hasFnAttribute("dontcall-error") || + Callee->hasFnAttribute("dontca

[PATCH] D141447: clang/OpenCL: Don't use a Function for the block type

2023-01-12 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm updated this revision to Diff 488638. arsenm added a comment. Fix patch split. update_cc_test_checks misses the calling convention, so I'm going to precommit a test which verifies those are correct CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141447/new/ https://reviews.llvm.or

[PATCH] D141620: clang/OpenCL: Make enqueued blocks inherit the parent attributes

2023-01-12 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm created this revision. arsenm added reviewers: Anastasia, yaxunl. Herald added subscribers: kosarev, jdoerfert, kerbowa, jvesely. Herald added a project: All. arsenm requested review of this revision. Herald added a subscriber: wdng. This was missing important environment context, like deno

[PATCH] D141543: [LinkerWrapper] Emit assembly files from LTO with `save-temps`

2023-01-12 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added inline comments. Comment at: clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp:531-537 + CmdArgs.push_back(*ClangPath); + CmdArgs.push_back("-o"); + CmdArgs.push_back(*TempFileOrErr); + CmdArgs.push_back("-fPIC"); + CmdArgs.push_back("-c"); + CmdArgs.push

[PATCH] D141543: [LinkerWrapper] Emit assembly files from LTO with `save-temps`

2023-01-12 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm accepted this revision. arsenm added a comment. This revision is now accepted and ready to land. Thanks, maybe I'll actually be able to comprehend openmp now Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141543/new/ https://reviews.llvm.org/

[PATCH] D141620: clang/OpenCL: Make enqueued blocks inherit the parent attributes

2023-01-12 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added inline comments. Comment at: clang/lib/CodeGen/TargetInfo.cpp:12488 + // FIXME: The invoke isn't applying the right attributes either + llvm::AttrBuilder KernelAttrs(C, CGF.CurFn->getAttributes().getFnAttrs()); + KernelAttrs.addAttribute("enqueued-block"); ---

[PATCH] D141617: OpenMP: Use inbounds in EmitOMPAggregateAssign

2023-01-12 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm closed this revision. arsenm added a comment. 8efb8f776abf1cb66107c42b47e6a127828c4db0 CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141617/new/ https://reviews.llvm.org/D141617 __

[PATCH] D141620: clang/OpenCL: Make enqueued blocks inherit the parent attributes

2023-01-13 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added inline comments. Comment at: clang/lib/CodeGen/TargetInfo.cpp:12488 + // FIXME: The invoke isn't applying the right attributes either + llvm::AttrBuilder KernelAttrs(C, CGF.CurFn->getAttributes().getFnAttrs()); + KernelAttrs.addAttribute("enqueued-block"); ---

[PATCH] D141620: clang/OpenCL: Make enqueued blocks inherit the parent attributes

2023-01-13 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added inline comments. Comment at: clang/lib/CodeGen/TargetInfo.cpp:12488 + // FIXME: The invoke isn't applying the right attributes either + llvm::AttrBuilder KernelAttrs(C, CGF.CurFn->getAttributes().getFnAttrs()); + KernelAttrs.addAttribute("enqueued-block"); ---

[PATCH] D141700: AMDGPU: Move enqueued block handling into clang

2023-01-13 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm created this revision. arsenm added reviewers: yaxunl, t-tye, b-sumner, rampitec, AMDGPU, Anastasia, JonChesterfield, jhuber6. Herald added subscribers: kosarev, foad, kerbowa, hiraditya, tpr, dstuttard, jvesely, kzhuravl. Herald added a project: All. arsenm requested review of this revisi

[PATCH] D141620: clang/OpenCL: Apply default attributes to enqueued blocks

2023-01-13 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added inline comments. Comment at: clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl:53-57 -__attribute__((target("s-memtime-inst"))) -void test_target_features_func(global int *i) { - queue_t default_queue; - unsigned flags = 0; - ndrange_t ndrange; ya

[PATCH] D141620: clang/OpenCL: Apply default attributes to enqueued blocks

2023-01-15 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added inline comments. Comment at: clang/test/CodeGenOpenCL/cl20-device-side-enqueue-attributes.cl:26 +// SPIR32-SAME: (ptr addrspace(1) align 4 [[A:%.*]], ptr addrspace(1) align 4 [[B:%.*]], i32 [[I:%.*]]) #[[ATTR0:[0-9]+]] !kernel_arg_addr_space !2 !kernel_arg_access_q

[PATCH] D141700: AMDGPU: Move enqueued block handling into clang

2023-01-15 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm updated this revision to Diff 489394. arsenm added a comment. Rename CHANGES SINCE LAST ACTION https://reviews.llvm.org/D141700/new/ https://reviews.llvm.org/D141700 Files: clang/lib/CodeGen/TargetInfo.cpp clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel-linking.cl clang/test/Code

[PATCH] D141765: [FPEnv] Fix complex operations in strictfp mode

2023-01-17 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added inline comments. Comment at: clang/test/CodeGen/complex-strictfp.c:8-9 // Include rounding metadata in the testing. -// FIXME: All cases of "fpexcept.maytrap" in this test are wrong. -// FIXME: All cases of "round.tonearest" in this test are wrong. +// All cases of

[PATCH] D141968: [NFC] Consolidate llvm::CodeGenOpt::Level handling

2023-01-17 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm accepted this revision. arsenm added a comment. This revision is now accepted and ready to land. The error handling inconsistency is kind of annoying too but this is an improvement. I thought traditionally GCC accepted whatever big number you put after -O Repository: rG LLVM Github Mo

[PATCH] D141968: [NFC] Consolidate llvm::CodeGenOpt::Level handling

2023-01-17 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added inline comments. Comment at: llvm/include/llvm/Support/CodeGen.h:57 + /// Code generation optimization level. + enum Level : IDType { +None = 0, ///< -O0 scott.linder wrote: > This is ABI breaking, so maybe we don't want/need to define the

[PATCH] D141798: Drop the ZeroBehavior parameter from countLeadingZeros and the like (NFC)

2023-01-18 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. > If you care about compilation speed, you should build LLVM with an appropriate -march= to take advantage of lzcnt and tzcnt. I think this is bad reasoning, nobody really uses -march Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llv

[PATCH] D142138: [OpenMP] Clean up AMD handling for `-fopenmp-targets=amdgcn` arch inference

2023-01-20 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. In D142138#4066420 , @JonChesterfield wrote: > @arsenm as above, mcpu != march important? llc takes a different one to clang > iirc I don't know what the difference would be Repository: rG LLVM Github Monorepo CHANGES SINCE

[PATCH] D142393: [OpenMP] Add 'amdgpu-flat-work-group-size' to OpenMP kernels

2023-01-23 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added inline comments. Comment at: clang/lib/CodeGen/TargetInfo.cpp:9552 F->addFnAttr("uniform-work-group-size", "true"); + if (IsOpenMPkernel) +F->addFnAttr("amdgpu-flat-work-group-size", Probably shouldn’t check the language, just it’s a kernel

[PATCH] D142393: [OpenMP] Add 'amdgpu-flat-work-group-size' to OpenMP kernels

2023-01-23 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added inline comments. Comment at: clang/lib/CodeGen/TargetInfo.cpp:9552 F->addFnAttr("uniform-work-group-size", "true"); + if (IsOpenMPkernel) +F->addFnAttr("amdgpu-flat-work-group-size", jhuber6 wrote: > arsenm wrote: > > Probably shouldn’t che

[PATCH] D127904: [AMDGPU] gfx11 new dot instruction codegen support

2022-06-15 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added inline comments. Comment at: llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.fdot2.f16.f16.ll:2 +; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py +; RUN: llc -global-isel -march=amdgcn -mcpu=gfx1100 -verify-machineinstrs < %s | FileCheck

[PATCH] D127923: [Diagnostics] Accept newline and format diag opts on first line

2022-06-22 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. My objection to the original patch was including things like the "" lines as remarks to mark a section. I don't think these should be emitted as remarks and are a display function the frontend should take care of if we want any kind of grouping Repository: rG LLV

[PATCH] D153310: Add codegen for llvm pow builtin

2023-07-18 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. Add a test for the strictfp case (there's an existing strictfp test for all the elementwise builtins) Comment at: clang/lib/CodeGen/CGBuiltin.cpp:3241 +unsigned Opc = llvm::Intrinsic::pow; +Value* Result = Builder.CreateBinaryIntrinsic(Opc, Op0,

[PATCH] D155191: clang/HIP: Directly use f32 exp and log builtins

2023-07-20 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm closed this revision. arsenm added a comment. 5f1d3834a2bc3b77e126a278a0e7f00bce5576fc CHANGES SINCE LAST ACTION https://reviews.llvm.org/D155191/new/ https://reviews.llvm.org/D155191 __

[PATCH] D155982: Partially revert "clang/HIP: Remove __llvm_amdgcn_* wrapper hacks"

2023-07-21 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm created this revision. arsenm added a reviewer: yaxunl. Herald added a project: All. arsenm requested review of this revision. Herald added a subscriber: wdng. Revert part of f407a7399575a6821940973c54754d42e72dd9ce .

[PATCH] D155982: Partially revert "clang/HIP: Remove __llvm_amdgcn_* wrapper hacks"

2023-07-21 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added inline comments. Comment at: clang/lib/Headers/__clang_hip_libdevice_declares.h:319 +// relevant. +__device__ inline _Float16 __llvm_amdgcn_rcp_f16(_Float16 x) { + return ((_Float16)1.0f) / x; yaxunl wrote: > Can we add the deprecated attribute to u

[PATCH] D155982: Partially revert "clang/HIP: Remove __llvm_amdgcn_* wrapper hacks"

2023-07-21 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added inline comments. Comment at: clang/lib/Headers/__clang_hip_libdevice_declares.h:319 +// relevant. +__device__ inline _Float16 __llvm_amdgcn_rcp_f16(_Float16 x) { + return ((_Float16)1.0f) / x; arsenm wrote: > yaxunl wrote: > > Can we add the depreca

[PATCH] D85917: [MSP430] Fix passing C structs and unions as function arguments

2023-07-21 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. Herald added a project: All. Is there a reason this never landed? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D85917/new/ https://reviews.llvm.org/D85917 ___ cfe-commits mailing

[PATCH] D155982: Partially revert "clang/HIP: Remove __llvm_amdgcn_* wrapper hacks"

2023-07-21 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm updated this revision to Diff 543025. arsenm added a comment. Add versioned deprecated macro CHANGES SINCE LAST ACTION https://reviews.llvm.org/D155982/new/ https://reviews.llvm.org/D155982 Files: clang/lib/Headers/__clang_hip_libdevice_declares.h clang/test/Headers/__clang_hip_ma

[PATCH] D155982: Partially revert "clang/HIP: Remove __llvm_amdgcn_* wrapper hacks"

2023-07-21 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm updated this revision to Diff 543111. arsenm marked an inline comment as done. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D155982/new/ https://reviews.llvm.org/D155982 Files: clang/lib/Headers/__clang_hip_libdevice_declares.h clang/test/Headers/__clang_hip_math_deprecated.hi

[PATCH] D155982: Partially revert "clang/HIP: Remove __llvm_amdgcn_* wrapper hacks"

2023-07-22 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm closed this revision. arsenm added a comment. 9b2dfff57a382b757c358b43ee1df7591cb480ee CHANGES SINCE LAST ACTION https://reviews.llvm.org/D155982/new/ https://reviews.llvm.org/D155982 __

[PATCH] D147732: [AMDGPU] Add type mangling for {read, write, readfirst, perm}lane intrinsics

2023-07-24 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added inline comments. Comment at: llvm/lib/Target/AMDGPU/AMDGPULateCodeGenPrepare.cpp:187 +Value *AMDGPULateCodeGenPrepare::buildLegalLaneIntrinsic( +IRBuilder<> &B, Intrinsic::ID IID, Value *Data0, Value *Data1, Value *Lane0, jrbyrnes wrote: > ars

[PATCH] D156040: [AMDGPU] Add dynamic stack bit info to kernel-resource-usage Rpass output

2023-07-24 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. In D156040#4526036 , @JonChesterfield wrote: > I don't see how this conveys any information. The compiler writes the stack > size to be allocated. If it doesn't know what is sufficient, it's going to > request some maximum and h

[PATCH] D156040: [AMDGPU] Add dynamic stack bit info to kernel-resource-usage Rpass output

2023-07-24 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added inline comments. Comment at: clang/test/Frontend/amdgcn-machine-analysis-remarks.cl:13 +// expected-remark@+2 {{LDS Size [bytes/block]: 0}} +// expected-remark@+1 {{Uses Dynamic Stack: False}} __kernel void foo() { Print right after the scra

[PATCH] D154123: [HIP] Start document HIP support by clang

2023-07-24 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added inline comments. Comment at: clang/docs/HIPSupport.rst:65 + + clang++ --offload-arch=gfx906 -xhip sample.cpp -o sample + scchan wrote: > missing --hip-link What does hip-link do? Why is it needed? I never use it and it works CHANGES SINCE LAST AC

[PATCH] D153310: Add codegen for llvm pow builtin

2023-07-24 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. Code looks fine, patch title is a bit confusing. Don't say codegen, and say clang: Add elementwise pow builtin? Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D153310/new/ https://reviews.llvm.org/D153310 ___

[PATCH] D153310: clang: Add elementwise pow builtin

2023-07-24 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm accepted this revision. arsenm added inline comments. This revision is now accepted and ready to land. Comment at: clang/test/CodeGen/strictfp-elementwise-bulitins.cpp:223 +// CHECK-NEXT: entry: +// CHECK-NEXT:[[TMP0:%.*]] = tail call <4 x float> @llvm.pow.v4f32(<4 x

[PATCH] D156040: [AMDGPU] Add dynamic stack bit info to kernel-resource-usage Rpass output

2023-07-25 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm accepted this revision. arsenm added a comment. This revision is now accepted and ready to land. lgtm with nits Comment at: llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp:1298 + CurrentProgramInfo.DynamicCallStack ? "True" : "False"; + EmitResourceUsageRemark("UsesDyn

[PATCH] D156040: [AMDGPU] Add dynamic stack bit info to kernel-resource-usage Rpass output

2023-07-25 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. In D156040#4526036 , @JonChesterfield wrote: > What's the use case I'm missing which makes this flag necessary/beneficial? The metadata is also irrelevant to this patch which is just reporting optimization hint information Rep

[PATCH] D130096: [Clang][AMDGPU] Emit AMDGPU library control constants in clang

2023-07-26 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. We should just do this now. clang shouldn't have to dig around on disk to emit a constant definition for a constant it already knows, and we have a clear path to removing these globals altogether. I have adequate patches to completely delete `__oclc_daz_opt` today. `__oc

[PATCH] D130096: [Clang][AMDGPU] Emit AMDGPU library control constants in clang

2023-07-26 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added inline comments. Comment at: clang/lib/CodeGen/TargetInfo.cpp:9461-9463 + bool CorrectSqrt = CGM.getLangOpts().OpenCL + ? CGM.getCodeGenOpts().OpenCLCorrectlyRoundedDivSqrt + : CGM.getCodeGenOpts().HIPCorrectlyRoundedD

[PATCH] D156366: HIP: Use __builtin_sqrt instead of routing through ocml sqrt for f64

2023-07-26 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm closed this revision. arsenm added a comment. 63dbe7e808d07bdf25bad85301980bc323b0cd64 CHANGES SINCE LAST ACTION https://reviews.llvm.org/D156366/new/ https://reviews.llvm.org/D156366 ___ cfe-commits mailing list cfe-commits@lists.llvm.org h

[PATCH] D157452: [RFC][Clang][Codegen] `std::type_info` needs special care with explicit address spaces

2023-08-10 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added inline comments. Comment at: clang/lib/CodeGen/CGCall.cpp:5237-5238 + + if (VTy->isPointerTy() && + VTy->getPointerAddressSpace() != IRTy->getPointerAddressSpace()) { +// In the case of targets that use a non-default address space f

[PATCH] D156737: clang: Add __builtin_elementwise_sqrt

2023-08-11 Thread Matt Arsenault via Phabricator via cfe-commits
arsenm added a comment. ping CHANGES SINCE LAST ACTION https://reviews.llvm.org/D156737/new/ https://reviews.llvm.org/D156737 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

<    2   3   4   5   6   7   8   9   10   11   >