[PATCH] D74853: [RFC WIP] Fix DSE for asm outputs (aka PR44913)
Eli Friedman via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Wed Feb 19 14:27:35 PST 2020
efriedma added a comment.
I guess reasoning about inline asm directly while we don't have call attributes that allow equivalent reasoning makes sense. Sort of serves as a demonstration for why the attributes are useful. But you'll need to be *very* careful that we're actually specifying and implementing it properly. LangRef needs to clearly state the rules, and we need a bunch of tests to compare various combinations against gcc.
I assume you're aware this is missing a lot of logic that's necessary for correctness.
================
Comment at: llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp:320
+ }
+ for (auto V : Outputs) {
+ int Size = DL.getTypeStoreSize(V->getType());
----------------
Iterating over a SmallSet of pointers is non-deterministic.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D74853/new/
https://reviews.llvm.org/D74853
More information about the llvm-commits
mailing list