[PATCH] [mips] Teach the delay slot filler to remove needless KILL instructions.
hfinkel at anl.gov
hfinkel at anl.gov
Thu Feb 19 15:19:39 PST 2015
In http://reviews.llvm.org/D7724#125702, @vkalintiris wrote:
> Hi Hal,
>
> In http://reviews.llvm.org/D7724#125595, @hfinkel wrote:
>
> > Why are you removing them instead of just ignoring them?
>
>
> Can we simply ignore them and under what conditions?
> I sent an email to the llvm-dev list the other day but it didn't receive much attention:
I apologize for the delay in responding.
>
>
> http://lists.cs.uiuc.edu/pipermail/llvmdev/2015-February/081716.html
>
>
> > Are they really useless, or are they marking subregister/superregister points of definition?
>
>
> I'm not very sure what you are asking me here. AFAIK, the Mips target
> doesn't use KILL instructions for anything special. The question is
> whether they are used for anything else outside the Mips target.
I re-read the llvmdev thread, and I think the conclusion there is correct: Given that you're calling TRI.invalidateLiveness(), removing the KILL instructions makes sense. They're used by the RA, copy propagation, post-RA-scheduler's anti-dependency breakers, etc., but otherwise, they likely don't really matter. So, as Quentin said, removing them is fine.
http://reviews.llvm.org/D7724
EMAIL PREFERENCES
http://reviews.llvm.org/settings/panel/emailpreferences/
More information about the llvm-commits
mailing list