[llvm-commits] [llvm] r107114 - /llvm/trunk/lib/Target/ARM/ARMLoadStoreOptimizer.cpp

Evan Cheng evan.cheng at apple.com
Mon Jun 28 22:46:40 PDT 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
>>> Log:
>>> 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?

Evan

> 
> /jakob
> 





More information about the llvm-commits mailing list