Owen/All, I've been working on adding support for reassociation with unsafe math (see: http://reviews.llvm.org/D4129). Do you know if this change, r156323, is still necessary? Specifically, do we need the reassociation pass to canonicalize FP operands for CSE to work effectively? This kinda scares me if it does! :( Side note: Without this canonicalization, I did see a 3% regression in Mesa because the slp-vectorizer's cost model is sensitive to the ordering of operands. I'm working on reducing a test case now. Chad
Hi Chad, As far as I’m aware, CSE is still sensitive to operand sorting to operate effectively. If you have a replacement for this functionality, we could probably remove it, but I don’t think we can simply live without it. —Owen On Jun 30, 2014, at 12:25 PM, Chad Rosier <mcrosier at codeaurora.org> wrote:> Owen/All, > I've been working on adding support for reassociation with unsafe math > (see: http://reviews.llvm.org/D4129). > > Do you know if this change, r156323, is still necessary? Specifically, do > we need the reassociation pass to canonicalize FP operands for CSE to work > effectively? This kinda scares me if it does! :( > > Side note: > Without this canonicalization, I did see a 3% regression in Mesa because > the slp-vectorizer's cost model is sensitive to the ordering of operands. > I'm working on reducing a test case now. > > Chad > >
Thanks, Owen. I'll make sure the canonicalization persists after my change. -----Original Message----- From: Owen Anderson [mailto:resistor at mac.com] Sent: Monday, June 30, 2014 4:20 PM To: mcrosier at codeaurora.org Cc: grosbach at apple.com; llvmdev at cs.uiuc.edu Subject: Re: r156323 - Reassociate FP operands. Hi Chad, As far as I'm aware, CSE is still sensitive to operand sorting to operate effectively. If you have a replacement for this functionality, we could probably remove it, but I don't think we can simply live without it. -Owen On Jun 30, 2014, at 12:25 PM, Chad Rosier <mcrosier at codeaurora.org> wrote:> Owen/All, > I've been working on adding support for reassociation with unsafe math > (see: http://reviews.llvm.org/D4129). > > Do you know if this change, r156323, is still necessary? > Specifically, do we need the reassociation pass to canonicalize FP > operands for CSE to work effectively? This kinda scares me if it > does! :( > > Side note: > Without this canonicalization, I did see a 3% regression in Mesa > because the slp-vectorizer's cost model is sensitive to the ordering ofoperands.> I'm working on reducing a test case now. > > Chad > >
Seemingly Similar Threads
- [LLVMdev] Reassociate and Canonicalization of Expressions
- [LLVMdev] Reassociate and Canonicalization of Expressions
- [LLVMdev] How to use LLVM optimizations with clang
- [LLVMdev] How to use LLVM optimizations with clang
- [LLVMdev] How to use LLVM optimizations with clang