[all-commits] [llvm/llvm-project] ec000a: [TargetInstrInfo] update INLINEASM memoperands onc...
Nick Desaulniers via All-commits
all-commits at lists.llvm.org
Mon Dec 4 08:15:46 PST 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: ec000a65553bac55a1f4b8b21c365d48dc6a540a
https://github.com/llvm/llvm-project/commit/ec000a65553bac55a1f4b8b21c365d48dc6a540a
Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
Date: 2023-12-04 (Mon, 04 Dec 2023)
Changed paths:
M llvm/lib/CodeGen/TargetInstrInfo.cpp
Log Message:
-----------
[TargetInstrInfo] update INLINEASM memoperands once (#74135)
In commit b05335989239 ("[X86InstrInfo] support memfold on spillable
inline asm
(#70832)"), I had a last minute fix to update the memoperands. I
originally
did this in the parent foldInlineAsmMemOperand call, updated the mir
test via
update_mir_test_checks.py, but then decided to move it to the child call
of
foldInlineAsmMemOperand.
But I forgot to rerun update_mir_test_checks.py. That last minute change
caused
the same memoperand to be added twice when recursion occurred (for tied
operands). I happened to get lucky that trailing content omitted from
the
CHECK line doesn't result in test failure.
But rerunning update_mir_test_checks.py on the mir test added in that
commit
produces updated output. This is resulting in updates to the test that:
1. conflate additions to the test in child commits with simply updating
the
test as it should have been when first committed.
2. look wrong because the same memoperand is specified twice (we don't
deduplicate memoperands when added). Example:
INLINEASM ... :: (load (s32) from %stack.0) (load (s32) from %stack.0)
Fix the bug, so that in child commits, we don't have additional
unrelated test
changes (which would be wrong anyways) from simply running
update_mir_test_checks.py.
Link: #20571
More information about the All-commits
mailing list