[llvm-commits] [llvm] r107114 - /llvm/trunk/lib/Target/ARM/ARMLoadStoreOptimizer.cpp
evan.cheng at apple.com
Tue Jun 29 00:46:40 CDT 2010
On Jun 28, 2010, at 10:09 PM, Jakob Stoklund Olesen wrote:
> On Jun 28, 2010, at 10:00 PM, Evan Cheng wrote:
>> On Jun 28, 2010, at 6:13 PM, Jakob Stoklund Olesen wrote:
>>> Author: stoklund
>>> Date: Mon Jun 28 20:13:07 2010
>>> New Revision: 107114
>>> URL: http://llvm.org/viewvc/llvm-project?rev=107114&view=rev
>>> When no memoperands are present, assume unaligned, volatile.
>> Have you checked if this disabled a lot of potential optimizations? I am afraid assuming volatileness is overly conservative.
> I haven't checked anything but running unit tests.
> We need both non-volatile and 4-byte alignment to safely combine loads and stores. If memoperands are missing, I don't see any alternative. How else can we guarantee the optimization is valid?
> If this causes missed optimizations, we should ensure that memory operands are present.
I agree. I am just wondering if that's indeed the case. Can you add a llc beta check to look for differences in # of load / store multiple optimizations?
More information about the llvm-commits