[PATCH] D157157: [clang] Add clang support for Machine Function Splitting on AArch64

2023-08-18 Thread Mingming Liu via Phabricator via cfe-commits
mingmingl accepted this revision. mingmingl added inline comments. This revision is now accepted and ready to land. Comment at: clang/test/Driver/fsplit-machine-functions.c:4 // RUN: %clang -### -target x86_64 -fprofile-use=default.profdata -fsplit-machine-functions -fno-split-

[PATCH] D149123: [AArch64][InlineAsm]Add Clang support for flag output constraints

2023-04-27 Thread Mingming Liu 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 rG4ab76b77cee0: [AArch64][InlineAsm]Add Clang support for flag output constraints (authored by mingmingl). Repository: rG LLVM Github Monorepo CHAN

[PATCH] D149274: [NFC][Clang]Remove a reference on argument since 'Name' is not modified'

2023-04-26 Thread Mingming Liu 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 rG739f5578c497: [NFC][Clang]Remove a reference on argument since 'Name' is not modified' (authored by mingmingl). Repository: rG LLVM Github Monorep

[PATCH] D149274: [NFC][Clang]Remove a reference on argument since 'Name' is not modified'

2023-04-26 Thread Mingming Liu via Phabricator via cfe-commits
mingmingl added a comment. thanks for the quick reviews! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D149274/new/ https://reviews.llvm.org/D149274 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D149274: [NFC][Clang]Remove a e reference on argument since 'Name' is not modified'

2023-04-26 Thread Mingming Liu via Phabricator via cfe-commits
mingmingl created this revision. Herald added a project: All. mingmingl requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D149274 Files: clang/lib/Basic/Targets/X86.cpp Inde

[PATCH] D149123: [AArch64][InlineAsm]Add Clang support for flag output constraints

2023-04-25 Thread Mingming Liu via Phabricator via cfe-commits
mingmingl added a comment. In D149123#4294619 , @mingmingl wrote: > While testing this patch with `./bin/clang -cc1 -S -triple=aarch64 > inline-asm-aarch64-flag-output.c` (which invokes global-isel for instruction > selection according to `print-after-a

[PATCH] D149123: [AArch64][InlineAsm]Add Clang support for flag output constraints

2023-04-25 Thread Mingming Liu via Phabricator via cfe-commits
mingmingl updated this revision to Diff 517062. mingmingl marked 3 inline comments as done. mingmingl edited the summary of this revision. mingmingl added a comment. update on the crashing issue (solved) resolve comments. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D149123/new/ https:

[PATCH] D149123: [AArch64][InlineAsm]Add Clang support for flag output constraints

2023-04-25 Thread Mingming Liu via Phabricator via cfe-commits
mingmingl added a comment. While testing this patch with `./bin/clang -cc1 -S -triple=aarch64 inline-asm-aarch64-flag-output.c` (which invokes global-isel for instruction selection according to `print-after-all` output), turns out GlobalISel doesn't support flag output yet (for x86 or aarch64).

[PATCH] D149123: [AArch64][InlineAsm]Add Clang support for flag output constraints

2023-04-25 Thread Mingming Liu via Phabricator via cfe-commits
mingmingl updated this revision to Diff 516640. mingmingl edited the summary of this revision. mingmingl added reviewers: dmgreen, nickdesaulniers, efriedma. mingmingl added a comment. remove 'No newline at end of file' CHANGES SINCE LAST ACTION https://reviews.llvm.org/D149123/new/ https://r

[PATCH] D149123: [AArch64][InlineAsm]Add Clang support for flag output constraints

2023-04-24 Thread Mingming Liu via Phabricator via cfe-commits
mingmingl created this revision. Herald added subscribers: mstorsjo, kristof.beyls. Herald added a project: All. mingmingl requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Before: - Clang emits 'invalid output constraint error' https://gcc

[PATCH] D140432: [AArch64] Guard {vmull_p64, vmull_high_p64} with 'aes' target guard.

2022-12-21 Thread Mingming Liu 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 rGc847e22db33e: [AArch64] Guard {vmull_p64, vmull_high_p64} with 'aes' target guard. (authored by mingmingl). Repository: rG LLVM Github Monorepo C

[PATCH] D140432: [AArch64] Guard {vmull_p64, vmull_high_p64} with 'aes' target guard.

2022-12-21 Thread Mingming Liu via Phabricator via cfe-commits
mingmingl added a comment. In D140432#4010143 , @dmgreen wrote: > Thanks for putting together the patch. It may be worth mentioning in the > commit message that aes currently includes both FEAT_AES and FEAT_PMULL. > Otherwise LGTM. Thanks for reviews! M

[PATCH] D140432: [AArch64] Guard {vmull_p64, vmull_high_p64} with 'aes' target guard.

2022-12-21 Thread Mingming Liu via Phabricator via cfe-commits
mingmingl updated this revision to Diff 484608. mingmingl added a comment. update commit message to mention target guard 'aes' includes both FEAT_AES and FEAT_PMULL currently. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D140432/new/ https://revie

[PATCH] D140432: [AArch64] Guard {vmull_p64, vmull_high_p64} with 'aes' target guard.

2022-12-20 Thread Mingming Liu via Phabricator via cfe-commits
mingmingl updated this revision to Diff 484373. mingmingl added a comment. indent intrinsic definition in arm_neon.td Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D140432/new/ https://reviews.llvm.org/D140432 Files: clang/include/clang/Basic/arm

[PATCH] D140432: [AArch64] Guard {vmull_p64, vmull_high_p64} with 'aes' target guard.

2022-12-20 Thread Mingming Liu via Phabricator via cfe-commits
mingmingl created this revision. mingmingl added a reviewer: dmgreen. Herald added a subscriber: kristof.beyls. Herald added a project: All. mingmingl requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. In this way, cpp code that uses these int

[PATCH] D127798: [AArch64] Define __ARM_FEATURE_RCPC

2022-09-20 Thread Mingming Liu 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 rGce7b4747e8b3: [AArch64] Define __ARM_FEATURE_RCPC (authored by mingmingl). Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https:

[PATCH] D127798: [AArch64] Define __ARM_FEATURE_RCPC

2022-09-20 Thread Mingming Liu via Phabricator via cfe-commits
mingmingl added a comment. Thanks! Going to submit. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D127798/new/ https://reviews.llvm.org/D127798 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http

[PATCH] D127798: [AArch64] Define __ARM_FEATURE_RCPC

2022-09-20 Thread Mingming Liu via Phabricator via cfe-commits
mingmingl added a comment. Hi folks, The ARM ACLE PR (https://github.com/ARM-software/acle/pull/199) was accepted. Would you take another look of this patch at your convenience? Thanks! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D127798/new/

[PATCH] D127798: [AArch64] Define __ARM_FEATURE_RCPC

2022-09-20 Thread Mingming Liu via Phabricator via cfe-commits
mingmingl updated this revision to Diff 461588. mingmingl added a comment. It has been a while since this patch was updated, rebase for review now that the Github PR was accepted. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D127798/new/ https://r

[PATCH] D127798: [AArch64] Define __ARM_FEATURE_RCPC

2022-06-16 Thread Mingming Liu via Phabricator via cfe-commits
mingmingl updated this revision to Diff 437750. mingmingl added a comment. Use `--target=aarch64` rather than `--target=aarch64-unknown-linux-gnu`, given the former means all ELF based operating systems can expect the feature. (thanks maskray@ for pointing it out!) Repository: rG LLVM Github

[PATCH] D127798: [AArch64] Define __ARM_FEATURE_RCPC

2022-06-16 Thread Mingming Liu via Phabricator via cfe-commits
mingmingl updated this revision to Diff 437749. mingmingl marked an inline comment as done. mingmingl added a comment. change from `-target=aarch64-none-linux-gnu` to `--target=aarch64-none-linux-gnu` to resolve a compile error. Verified no other compilation error by `ninja check-all` Reposito

[PATCH] D127798: [AArch64] Define __ARM_FEATURE_RCPC

2022-06-16 Thread Mingming Liu via Phabricator via cfe-commits
mingmingl marked an inline comment as done. mingmingl added inline comments. Comment at: clang/test/Preprocessor/aarch64-target-features.c:22 // CHECK-NOT: __ARM_FEATURE_CRC32 1 +// CHECK-NOT: __ARM_FEATURE_RCPC 1 // CHECK-NOT: __ARM_FEATURE_CRYPTO 1 MaskRay wr

[PATCH] D127798: [AArch64] Define __ARM_FEATURE_RCPC

2022-06-16 Thread Mingming Liu via Phabricator via cfe-commits
mingmingl updated this revision to Diff 437691. mingmingl marked an inline comment as done. mingmingl added a comment. In clang/test/Preprocessor/aarch64-target-features.c, move `__ARM_FEATURE_RCPC` to keep the alphabetical list, and use `-target=aarch64..` (the join style) rather than legacy wh

[PATCH] D127798: [AArch64] Define __ARM_FEATURE_RCPC

2022-06-16 Thread Mingming Liu via Phabricator via cfe-commits
mingmingl added a comment. In D127798#3588283 , @lenary wrote: > Yes. Please submit a PR or Issue to the ACLE, explaining the use-case (the > explanation here is good enough, I think). > > Once the ACLE changes are merged, then you can proceed with a pat

[PATCH] D127798: [AArch64] Define __ARM_FEATURE_RCPC

2022-06-15 Thread Mingming Liu via Phabricator via cfe-commits
mingmingl added a comment. In D127798#3585025 , @tyb0807 wrote: > The patch looks correct to me, but looking at > https://github.com/ARM-software/acle/blob/main/main/acle.md where all the > ACLE macros are defined, I'm not sure that `__ARM_FEATURE_RCPC`

[PATCH] D127798: [AArch64] Define __ARM_FEATURE_RCPC

2022-06-14 Thread Mingming Liu via Phabricator via cfe-commits
mingmingl updated this revision to Diff 436940. mingmingl added a comment. update commit message with differential revision link. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D127798/new/ https://reviews.llvm.org/D127798 Files: clang/lib/Basic/T

[PATCH] D127798: [AArch64] Define __ARM_FEATURE_RCPC

2022-06-14 Thread Mingming Liu via Phabricator via cfe-commits
mingmingl created this revision. Herald added a subscriber: kristof.beyls. Herald added a project: All. mingmingl requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. This patch implements the definition of __ARM_FEATURE_RCPC when clang commands

[PATCH] D115648: [LTO] Ignore unreachable virtual functions in WPD in thin LTO

2021-12-15 Thread Mingming Liu 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 rG4ab5527c15f0: [ThinLTO] Ignore unreachable virtual functions in WPD in thin LTO. (authored by luna). Repository: rG LLVM Github Monorepo CHANGES

[PATCH] D115648: [LTO] Ignore unreachable virtual functions in WPD in thin LTO

2021-12-15 Thread Mingming Liu via Phabricator via cfe-commits
luna added a comment. In D115648#3196142 , @luna wrote: > Simplify test case by using `-O3` to generate IR. Probably because of the diff from `ThinLTO/X86/devirt_hybrid_after_filtering_unreachable.ll` to `ThinLTO/X86/devirt_after_filtering_unreachable.

[PATCH] D115648: [LTO] Ignore unreachable virtual functions in WPD in thin LTO

2021-12-15 Thread Mingming Liu via Phabricator via cfe-commits
luna updated this revision to Diff 394689. luna marked an inline comment as done. luna added a comment. Simplify test case by using `-O3` to generate IR. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D115648/new/ https://reviews.llvm.org/D115648 Fi

[PATCH] D115648: [LTO] Ignore unreachable virtual functions in WPD in thin LTO

2021-12-14 Thread Mingming Liu via Phabricator via cfe-commits
luna marked an inline comment as done. luna added a comment. thanks for the inputs! Comment at: llvm/test/ThinLTO/X86/devirt_after_filtering_unreachable.ll:16 + +; ENABLESPLITFLAG: gv: (name: "_ZN4BaseD0Ev", {{.*}}, funcFlags: ({{.*}} mustBeUnreachable: 1 + te

[PATCH] D115648: [LTO] Ignore unreachable virtual functions in WPD in thin LTO

2021-12-14 Thread Mingming Liu via Phabricator via cfe-commits
luna updated this revision to Diff 394461. luna added a comment. Simplify filecheck by re-using one prefix to test the unreachable bit. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D115648/new/ https://reviews.llvm.org/D115648 Files: llvm/lib/Tr

[PATCH] D115648: [LTO] Ignore unreachable virtual functions in WPD in thin LTO

2021-12-14 Thread Mingming Liu via Phabricator via cfe-commits
luna added inline comments. Comment at: llvm/test/ThinLTO/X86/devirt_after_filtering_unreachable.ll:11 +; RUN: llvm-dis -o - %t-main.bc.0 | FileCheck %s --check-prefix=ENABLESPLITFLAG +; ENABLESPLITFLAG: gv: (name: "_ZN4BaseD0Ev", {{.*}}, funcFlags: ({{.*}} mustBeUnreachable: 1

[PATCH] D115648: [LTO] Ignore unreachable virtual functions in WPD in thin LTO

2021-12-14 Thread Mingming Liu via Phabricator via cfe-commits
luna updated this revision to Diff 394443. luna marked an inline comment as done. luna added a comment. Simplify test by sharing one pattern across two filecheck lines. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D115648/new/ https://reviews.llvm.

[PATCH] D115648: [LTO] Ignore unreachable virtual functions in WPD in thin LTO

2021-12-14 Thread Mingming Liu via Phabricator via cfe-commits
luna marked an inline comment as done. luna added a comment. thanks for review! Also in the previous reply, I forgot to mention I removed the the line `assert ((VTP.FuncVI) && "VTP.FuncVI must be nullptr` after finding existing references doesn't guarantee that [1], and `mustBeUnreachableFuncti

[PATCH] D115648: [LTO] Ignore unreachable virtual functions in WPD in thin LTO

2021-12-14 Thread Mingming Liu via Phabricator via cfe-commits
luna updated this revision to Diff 394435. luna added a comment. Simplify test by using non-DAG prefix (for one pattern), and avoid capturing values since they are not used. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D115648/new/ https://reviews

[PATCH] D115648: [LTO] Ignore unreachable virtual functions in WPD in thin LTO

2021-12-14 Thread Mingming Liu via Phabricator via cfe-commits
luna added a comment. thanks for review! Comment at: llvm/test/ThinLTO/X86/devirt_after_filtering_unreachable.ll:64 +; Check that EnableSplitLTOUnit is off, and check the content of summary information. +; RUN: llvm-dis -o - %t3.o | FileCheck %s --check-prefix=NOENABLESPLITFLA

[PATCH] D115648: [LTO] Ignore unreachable virtual functions in WPD in thin LTO

2021-12-14 Thread Mingming Liu via Phabricator via cfe-commits
luna updated this revision to Diff 394429. luna marked 2 inline comments as done. luna added a comment. Change test IR by removing irrelevant lines and using one prefix per FileCheck. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D115648/new/ https:

[PATCH] D115648: [LTO] Ignore unreachable virtual functions in WPD in thin LTO

2021-12-14 Thread Mingming Liu via Phabricator via cfe-commits
luna updated this revision to Diff 394389. luna added a comment. Rebase to main Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D115648/new/ https://reviews.llvm.org/D115648 Files: llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp llvm/test/ThinLTO/

[PATCH] D115492: [LTO] Ignore unreachable virtual functions in WPD in hybrid LTO

2021-12-14 Thread Mingming Liu 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 rG09a704c5efba: [LTO] Ignore unreachable virtual functions in WPD in hybrid LTO. (authored by luna). Repository: rG LLVM Github Monorepo CHANGES SI

[PATCH] D115492: [LTO] Ignore unreachable virtual functions in WPD in hybrid LTO

2021-12-14 Thread Mingming Liu via Phabricator via cfe-commits
luna added a comment. In D115492#3192624 , @tejohnson wrote: > lgtm after adding a description to test as noted below. Done. Thanks for review and feedback! Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D11

[PATCH] D115492: [LTO] Ignore unreachable virtual functions in WPD in hybrid LTO

2021-12-14 Thread Mingming Liu via Phabricator via cfe-commits
luna updated this revision to Diff 394293. luna added a comment. Describe what the test case devirt_hybrid_after_filtering_unreachable.ll is for. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D115492/new/ https://reviews.llvm.org/D115492 Files: c

[PATCH] D115492: [LTO] Ignore unreachable virtual functions in WPD in hybrid LTO

2021-12-14 Thread Mingming Liu via Phabricator via cfe-commits
luna updated this revision to Diff 394281. luna marked 2 inline comments as done. luna added a comment. Revise based on comments. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D115492/new/ https://reviews.llvm.org/D115492 Files: clang/test/CodeGe

[PATCH] D115492: [LTO] Ignore unreachable virtual functions in WPD in hybrid LTO

2021-12-14 Thread Mingming Liu via Phabricator via cfe-commits
luna marked 5 inline comments as done. luna added inline comments. Comment at: llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp:396 + } + // Identifies a function as unreachable if and only if + // 1) All summaries are live. tejohnson wrote: > Actually I think w

[PATCH] D115648: [LTO] Ignore unreachable virtual functions in WPD in hybrid LTO

2021-12-13 Thread Mingming Liu via Phabricator via cfe-commits
luna updated this revision to Diff 393994. luna added a comment. Add unit test for thinlto. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D115648/new/ https://reviews.llvm.org/D115648 Files: clang/test/CodeGen/thinlto-distributed-cfi-devirt.ll

[PATCH] D115648: [LTO] Ignore unreachable virtual functions in WPD in hybrid LTO

2021-12-13 Thread Mingming Liu via Phabricator via cfe-commits
luna created this revision. Herald added subscribers: ormris, pengfei, arphaman, steven_wu, hiraditya, inglorion. luna requested review of this revision. Herald added projects: clang, LLVM. Herald added subscribers: llvm-commits, cfe-commits. - In FunctionSummary, add a new bit `mustBeUnreachable

[PATCH] D115492: [LTO] Ignore unreachable virtual functions in WPD in hybrid LTO

2021-12-13 Thread Mingming Liu via Phabricator via cfe-commits
luna updated this revision to Diff 393927. luna added a comment. Use type `auto` for GUID to fix a compile error. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D115492/new/ https://reviews.llvm.org/D115492 Files: clang/test/CodeGen/thinlto-distri

[PATCH] D115492: [LTO] Ignore unreachable virtual functions in WPD in hybrid LTO

2021-12-13 Thread Mingming Liu via Phabricator via cfe-commits
luna updated this revision to Diff 393921. luna added a comment. Use GUID computed with exported function name as a fallback to look up index when there isn't an entry for current function GUID. - Based on feedback in https://reviews.llvm.org/D115203#inline-1104045 - The entry might be absent wh

[PATCH] D115492: [LTO] Ignore unreachable virtual functions in WPD in hybrid LTO

2021-12-10 Thread Mingming Liu via Phabricator via cfe-commits
luna updated this revision to Diff 393531. luna added a comment. Remove verbose attributes from test case Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D115492/new/ https://reviews.llvm.org/D115492 Files: clang/test/CodeGen/thinlto-distributed-cf

[PATCH] D115492: [LTO] Ignore unreachable virtual functions in WPD in hybrid LTO

2021-12-10 Thread Mingming Liu via Phabricator via cfe-commits
luna updated this revision to Diff 393392. luna added a comment. Revert unit test that shouldn't be affected. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D115492/new/ https://reviews.llvm.org/D115492 Files: clang/test/CodeGen/thinlto-distribute

[PATCH] D115492: [LTO] Ignore unreachable virtual functions in WPD in hybrid LTO

2021-12-09 Thread Mingming Liu via Phabricator via cfe-commits
luna created this revision. Herald added subscribers: ormris, pengfei, arphaman, steven_wu, hiraditya, inglorion. luna requested review of this revision. Herald added projects: clang, LLVM. Herald added subscribers: llvm-commits, cfe-commits. - In FunctionSummary, add a new bit `mustBeUnreachable

[PATCH] D114764: Use `thin` that starts with lowercase letter. - `Thin` gives an error when following https://clang.llvm.org/docs/ThinLTO.html#clang-bootstrap, and `thin` works.

2021-11-29 Thread Mingming Liu via Phabricator via cfe-commits
luna added a comment. In D114764#3160204 , @tejohnson wrote: > There are some other docs that also use "Thin" (and "Full", etc). I see my > own script uses "THIN" for this cmake variable. Looks like we convert to > uppercase so I wouldn't think it shoul

[PATCH] D114764: Use `thin` that starts with lowercase letter. - `Thin` gives an error when following lib/Transforms/IPO/WholeProgramDevirt.cpp, and `thin` works.

2021-11-29 Thread Mingming Liu via Phabricator via cfe-commits
luna created this revision. luna added a reviewer: tejohnson. Herald added subscribers: ormris, steven_wu, hiraditya. luna requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Fix a typo. Repository: rG LLVM Github Monorepo https://reviews.