[PATCH] D72291: Reimplement BoundaryAlign mechanism (mostly, but not quite NFC)
Kan Shengchen via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Jan 6 18:52:16 PST 2020
skan added inline comments.
================
Comment at: llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp:481-484
+ if ((needAlignInst(Inst) && (!PendingBA ||
+ !isMacroFused(PrevInst, Inst))) ||
+ (NeedAlignFused && isFirstMacroFusibleInst(Inst, *MCII))) {
+ PendingBA = new MCBoundaryAlignFragment(AlignBoundary);
----------------
Case
```
cmp %rax %rcx
.align 16
je .Label0
```
isn't correctly handled here. We should not emit NOP before `cmp %rax %rcx`, it may cause infinite loop.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D72291/new/
https://reviews.llvm.org/D72291
More information about the llvm-commits
mailing list