[PATCH] D75993: [Target][ARM] Improvements to the VPT Block Insertion Pass
Pierre van Houtryve via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Mar 12 03:46:56 PDT 2020
Pierre-vh updated this revision to Diff 249877.
Pierre-vh added a comment.
Updated the diff to fix a bug: The pass refused to generate `vpsteee` blocks because the condition in `SkipPredicatedInstrs` was wrong (It needed to do one more iteration when `MaxSkips == 0`, and then stop).
The pass can now correctly generate this kind of assembly:
vpsteee
vcmpt.s32 le, q1, r12
vcmpe.s32 lt, q1, r3
vstrwe.32 q0, [r6], #16
vstrwe.32 q0, [r4], #16
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D75993/new/
https://reviews.llvm.org/D75993
Files:
llvm/lib/Target/ARM/MVEVPTBlockPass.cpp
llvm/test/CodeGen/Thumb2/mve-pred-not.ll
llvm/test/CodeGen/Thumb2/mve-pred-threshold.ll
llvm/test/CodeGen/Thumb2/mve-vpt-3-blocks-kill-vpr.mir
llvm/test/CodeGen/Thumb2/mve-vpt-nots.mir
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D75993.249877.patch
Type: text/x-patch
Size: 20193 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200312/9766a8c8/attachment-0001.bin>
More information about the llvm-commits
mailing list