[PATCH] D105946: [PowerPC] Store, load, move from and to registers related builtins

2021-07-21 Thread Victor Huang via Phabricator via cfe-commits
NeHuang added subscribers: jroelofs, NeHuang. NeHuang added a comment. @jroelofs committed `f6769b663a0d4432b5e00e0c03904a5dfba7b077` to move the backend test cases from `CodeGen` -> `CodeGen/PowerPC` so they don't fail when the PPC backend isn't built. Repository: rG LLVM Github Monorepo C

[PATCH] D105946: [PowerPC] Store, load, move from and to registers related builtins

2021-07-20 Thread Albion Fung via Phabricator via cfe-commits
Conanap added a comment. issue should be fixed now; pushed with this: https://reviews.llvm.org/D106130#change-PZi4uueeCg9i (I just had to move the test files into the `PowerPC` folder). Will continue to monitor Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.

[PATCH] D105946: [PowerPC] Store, load, move from and to registers related builtins

2021-07-20 Thread Albion Fung via Phabricator via cfe-commits
Conanap added a comment. I'm aware of the getting target issue; the fix will be up soon. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105946/new/ https://reviews.llvm.org/D105946 ___ cfe-commits mailing

[PATCH] D105946: [PowerPC] Store, load, move from and to registers related builtins

2021-07-20 Thread Albion Fung via Phabricator via cfe-commits
This revision was landed with ongoing or failed builds. This revision was automatically updated to reflect the committed changes. Closed by commit rG3434ac9e3902: [PowerPC] Store, load, move from and to registers related builtins (authored by Conanap). Changed prior to commit: https://reviews.l

[PATCH] D105946: [PowerPC] Store, load, move from and to registers related builtins

2021-07-19 Thread Albion Fung via Phabricator via cfe-commits
Conanap updated this revision to Diff 359945. Conanap added a comment. Fixed a typo Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105946/new/ https://reviews.llvm.org/D105946 Files: clang/include/clang/Basic/BuiltinsPPC.def clang/lib/Basic/Tar

[PATCH] D105946: [PowerPC] Store, load, move from and to registers related builtins

2021-07-19 Thread Albion Fung via Phabricator via cfe-commits
Conanap updated this revision to Diff 359850. Conanap added a comment. Changed flags for intrinsic of dcbtt and dcbtstt Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105946/new/ https://reviews.llvm.org/D105946 Files: clang/include/clang/Basic/B

[PATCH] D105946: [PowerPC] Store, load, move from and to registers related builtins

2021-07-18 Thread Nemanja Ivanovic via Phabricator via cfe-commits
nemanjai accepted this revision. nemanjai added a comment. This revision is now accepted and ready to land. LGTM. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105946/new/ https://reviews.llvm.org/D105946 __

[PATCH] D105946: [PowerPC] Store, load, move from and to registers related builtins

2021-07-16 Thread Albion Fung via Phabricator via cfe-commits
Conanap updated this revision to Diff 359516. Conanap marked an inline comment as done. Conanap added a comment. Moved pattern to a more appropriate place, updated test cases Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105946/new/ https://reviews

[PATCH] D105946: [PowerPC] Store, load, move from and to registers related builtins

2021-07-16 Thread Albion Fung via Phabricator via cfe-commits
Conanap marked 4 inline comments as done. Conanap added a comment. Addressed comments Comment at: clang/test/CodeGen/builtins-ppc-xlcompat-LoadReseve-StoreCond.c:15 + // CHECK-LABEL: @test_lwarx // CHECK: %0 = tail call i32 asm sideeffect "lwarx $0, ${1:y}", "=r,*Z,~{memor

[PATCH] D105946: [PowerPC] Store, load, move from and to registers related builtins

2021-07-16 Thread Albion Fung via Phabricator via cfe-commits
Conanap updated this revision to Diff 359433. Conanap marked an inline comment as done. Conanap added a comment. Updated test cases Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105946/new/ https://reviews.llvm.org/D105946 Files: clang/include/c

[PATCH] D105946: [PowerPC] Store, load, move from and to registers related builtins

2021-07-16 Thread Lei Huang via Phabricator via cfe-commits
lei added inline comments. Comment at: clang/test/CodeGen/builtins-ppc-xlcompat-LoadReseve-StoreCond.c:15 + // CHECK-LABEL: @test_lwarx // CHECK: %0 = tail call i32 asm sideeffect "lwarx $0, ${1:y}", "=r,*Z,~{memory}"(i32* %a) return __lwarx(a); where is

[PATCH] D105946: [PowerPC] Store, load, move from and to registers related builtins

2021-07-16 Thread Nemanja Ivanovic via Phabricator via cfe-commits
nemanjai added inline comments. Comment at: llvm/lib/Target/PowerPC/PPCInstrVSX.td:4072 + +def : Pat<(int_ppc_stfiw ForceXForm:$dst, f64:$XT), + (STXSIWX f64:$XT, ForceXForm:$dst)>; I just realized this is in the wrong place. STXSIWX was added in Power8

[PATCH] D105946: [PowerPC] Store, load, move from and to registers related builtins

2021-07-16 Thread Albion Fung via Phabricator via cfe-commits
Conanap updated this revision to Diff 359380. Conanap added a comment. Updated a test case Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105946/new/ https://reviews.llvm.org/D105946 Files: clang/include/clang/Basic/BuiltinsPPC.def clang/lib/Ba

[PATCH] D105946: [PowerPC] Store, load, move from and to registers related builtins

2021-07-16 Thread Albion Fung via Phabricator via cfe-commits
Conanap updated this revision to Diff 359322. Conanap marked 5 inline comments as done. Conanap added a comment. Added non-vsx pattern for stfiw, extra testline for that pattern, some nits Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105946/new/ h

[PATCH] D105946: [PowerPC] Store, load, move from and to registers related builtins

2021-07-16 Thread Nemanja Ivanovic via Phabricator via cfe-commits
nemanjai requested changes to this revision. nemanjai added a comment. This revision now requires changes to proceed. This is getting close to approval. The newly added `__stfiw` needs to be fixed and some nits need to be addressed. Comment at: clang/lib/Sema/SemaChecking.cpp:

[PATCH] D105946: [PowerPC] Store, load, move from and to registers related builtins

2021-07-16 Thread Albion Fung via Phabricator via cfe-commits
Conanap updated this revision to Diff 359259. Conanap added a comment. Updated lharx and lbarx to inline asm implementation, implemented stfiw. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105946/new/ https://reviews.llvm.org/D105946 Files: cla

[PATCH] D105946: [PowerPC] Store, load, move from and to registers related builtins

2021-07-16 Thread Nemanja Ivanovic via Phabricator via cfe-commits
nemanjai requested changes to this revision. nemanjai added a comment. This revision now requires changes to proceed. Taking this off the review queue until `lharx/lbarx` are changed to emit inline asm in line with `lwarx/ldarx`. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION

[PATCH] D105946: [PowerPC] Store, load, move from and to registers related builtins

2021-07-15 Thread Albion Fung via Phabricator via cfe-commits
Conanap updated this revision to Diff 359104. Conanap added a comment. Changed more xoaddr to ForceXForm Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105946/new/ https://reviews.llvm.org/D105946 Files: clang/include/clang/Basic/BuiltinsPPC.def

[PATCH] D105946: [PowerPC] Store, load, move from and to registers related builtins

2021-07-15 Thread Albion Fung via Phabricator via cfe-commits
Conanap updated this revision to Diff 359097. Conanap marked 2 inline comments as done. Conanap added a comment. Changed xoaddr, removed extws, changed check prefix Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105946/new/ https://reviews.llvm.org/

[PATCH] D105946: [PowerPC] Store, load, move from and to registers related builtins

2021-07-15 Thread Lei Huang via Phabricator via cfe-commits
lei added inline comments. Comment at: llvm/include/llvm/IR/IntrinsicsPowerPC.td:1569 } - nit: un-related line deletion Comment at: llvm/lib/Target/PowerPC/PPCInstrInfo.td:5449 + def : Pat<(int_ppc_sthcx xoaddr:$dst, gprc:$A), + (STH

[PATCH] D105946: [PowerPC] Store, load, move from and to registers related builtins

2021-07-15 Thread Albion Fung via Phabricator via cfe-commits
Conanap updated this revision to Diff 359066. Conanap added a comment. Added more tests, corrected sema checking and intrinsic flag Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105946/new/ https://reviews.llvm.org/D105946 Files: clang/include/c

[PATCH] D105946: [PowerPC] Store, load, move from and to registers related builtins

2021-07-15 Thread Nemanja Ivanovic via Phabricator via cfe-commits
nemanjai requested changes to this revision. nemanjai added a comment. This revision now requires changes to proceed. We have encountered an issue with `lwarx/ldarx` that required that they emit inline asm rather than an intrinsic. What makes `lbarx/lharx` different? Comment a

[PATCH] D105946: [PowerPC] Store, load, move from and to registers related builtins

2021-07-15 Thread Lei Huang via Phabricator via cfe-commits
lei added inline comments. Comment at: clang/lib/Sema/SemaChecking.cpp:3371 +return SemaFeatureCheck(*this, TheCall, "extdiv", +diag::err_ppc_builtin_only_on_arch, "8"); #define CUSTOM_BUILTIN(Name, Intr, Types, Acc) \ need tests

[PATCH] D105946: [PowerPC] Store, load, move from and to registers related builtins

2021-07-15 Thread Lei Huang via Phabricator via cfe-commits
lei added inline comments. Comment at: llvm/include/llvm/IR/IntrinsicsPowerPC.td:1569 + def int_ppc_sthcx : Intrinsic<[llvm_i32_ty], [llvm_ptr_ty, llvm_i32_ty], [IntrWriteMem]>; + def int_ppc_lharx : GCCBuiltin<"__builtin_ppc_lharx">, + Intrinsic<[llvm_i32

[PATCH] D105946: [PowerPC] Store, load, move from and to registers related builtins

2021-07-14 Thread Albion Fung via Phabricator via cfe-commits
Conanap updated this revision to Diff 358738. Conanap marked an inline comment as done. Conanap added a comment. Added more sema checking, test case update Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D105946/new/ https://reviews.llvm.org/D105946

[PATCH] D105946: [PowerPC] Store, load, move from and to registers related builtins

2021-07-14 Thread Lei Huang via Phabricator via cfe-commits
lei added a comment. please add sema checking for pwr8 builtins. Comment at: llvm/test/CodeGen/PowerPC/builtins-ppc-xlcompat-LoadReserve-StoreCond.ll:80 +declare i32 @llvm.ppc.lharx(i8*) +define dso_local signext i16 @test_lharx(i16* %a) local_unnamed_addr #0 { +; CHECK-64-LAB

[PATCH] D105946: [PowerPC] Store, load, move from and to registers related builtins

2021-07-13 Thread Albion Fung via Phabricator via cfe-commits
Conanap created this revision. Herald added subscribers: shchenz, kbarton, hiraditya, nemanjai. Conanap requested review of this revision. Herald added projects: clang, LLVM. Herald added subscribers: llvm-commits, cfe-commits. This patch implements store, load, move from and to registers relate