Displaying 12 results from an estimated 12 matches for "memloc".
2015 Aug 07
2
load instruction erroneously removed by GVN
...all?
MemoryDependenceAnalysis::getDependency uses
MemoryDependenceAnalysis::getPointerDependencyFrom, which does the
following analysis at the end:
// See if this instruction (e.g. a call or vaarg) mod/ref's the
pointer.
AliasAnalysis::ModRefResult MR = AA->getModRefInfo(Inst, MemLoc);
// If necessary, perform additional analysis.
if (MR == AliasAnalysis::ModRef)
MR = AA->callCapturesBefore(Inst, MemLoc, DT);
switch (MR) {
case AliasAnalysis::NoModRef:
// If the call has no effect on the queried pointer, just ignore it.
continue;...
2017 Oct 09
3
Expose aliasing information in getModRefInfo (or viceversa?)
Hi,
This came up in https://reviews.llvm.org/D38569, and I'd like some input on
what's the best way to get alias and mod-ref info without having two alias
calls.
A couple of ideas:
(a) Extend the getModRefInfo interface (+getModRefBehavior,
+gerArgModRefInfo) to return a pair {ModRefInfo, AliasResult}.
The AliasResult can be optional based on an argument
e.g.:
struct MRI_AR {
2017 Oct 09
2
Expose aliasing information in getModRefInfo (or viceversa?)
...with tons of loads and stores to test against each other.
> That's actually fairly rare in bootstrap, as you can see.
> Let me get you some test cases.
>
SG, thanks!
>
> My guess is that we should go with mustmod.
>
>
> As for callsites, adding mustmod works for call, memloc and call, call
> testing.
>
>
>
> On Mon, Oct 9, 2017, 4:48 PM Alina Sbirlea <alina.sbirlea at gmail.com>
> wrote:
>
>> Hi,
>>
>> This came up in https://reviews.llvm.org/D38569, and I'd like some input
>> on what's the best way to get al...
2017 Oct 09
1
Expose aliasing information in getModRefInfo (or viceversa?)
...ith tons of loads and stores to test against
> each other. That's actually fairly rare in bootstrap, as you can see.
> Let me get you some test cases.
>
> My guess is that we should go with mustmod.
I agree.
-Hal
>
>
> As for callsites, adding mustmod works for call, memloc and call, call
> testing.
>
>
> On Mon, Oct 9, 2017, 4:48 PM Alina Sbirlea <alina.sbirlea at gmail.com
> <mailto:alina.sbirlea at gmail.com>> wrote:
>
> Hi,
>
> This came up in https://reviews.llvm.org/D38569, and I'd like some
> input on...
2017 Oct 10
2
Expose aliasing information in getModRefInfo (or viceversa?)
...500 / 48.228 / 48.453
>
> Larger case hits it 1872 times. Timings, average over 5 runs (s):
> 100 / 23.575 / 23.962
> 200 / 23.874 / 23.848
>
>
> My guess is that we should go with mustmod.
>>>
>>>
>>> As for callsites, adding mustmod works for call, memloc and call, call
>>> testing.
>>>
>>
>>>
>>
>>>
>>> On Mon, Oct 9, 2017, 4:48 PM Alina Sbirlea <alina.sbirlea at gmail.com>
>>> wrote:
>>>
>>>> Hi,
>>>>
>>>> This came up in https://re...
2012 Jan 24
0
[LLVMdev] load widening conflicts with AddressSanitizer
...ision 148708)
+++ lib/Analysis/MemoryDependenceAnalysis.cpp (working copy)
@@ -323,6 +323,14 @@
!TD.fitsInLegalInteger(NewLoadByteSize*8))
return 0;
+ if (LI->getParent()->getParent()->hasFnAttr(Attribute::AddressSafety)
&&
+ LIOffs+NewLoadByteSize > MemLocEnd) {
+ // We will be reading past the location accessed by the original
program.
+ // While this is safe in a regular build, Address Safety analysys
tools
+ // may start reporting false warnings. So, do't do widening.
+ return 0;
+ }
+
// If a load of this width wou...
2011 Dec 28
2
[LLVMdev] load widening conflicts with AddressSanitizer
________________________________
From: Kostya Serebryany [kcc at google.com]
Sent: Wednesday, December 28, 2011 2:46 PM
To: Criswell, John T
Cc: llvmdev at cs.uiuc.edu
Subject: Re: [LLVMdev] load widening conflicts with AddressSanitizer
On Wed, Dec 28, 2011 at 12:40 PM, Criswell, John T <criswell at illinois.edu<mailto:criswell at illinois.edu>> wrote:
Dear All,
I think adding
2004 Dec 03
2
[LLVMdev] Adding xadd instruction to X86
Chris Lattner wrote:
> On Thu, 2 Dec 2004, Brent Monroe wrote:
>
>>I'm trying to add the xadd instruction to the X86 back end.
>>xadd r/m32, r32
>>exchanges r/m32 and r32, and loads the sum into r/m32. I'm
>>interested in the case where the destination operand is a
>>memory location.
>>
>>I've added the following entry to
2017 Oct 10
2
Expose aliasing information in getModRefInfo (or viceversa?)
...Timings, average over 5 runs (s):
>>> 100 / 23.575 / 23.962
>>> 200 / 23.874 / 23.848
>>>
>>>
>>> My guess is that we should go with mustmod.
>>>>>
>>>>>
>>>>> As for callsites, adding mustmod works for call, memloc and call, call
>>>>> testing.
>>>>>
>>>>
>>>>>
>>>>
>>>>>
>>>>> On Mon, Oct 9, 2017, 4:48 PM Alina Sbirlea <alina.sbirlea at gmail.com>
>>>>> wrote:
>>>>>
>>&...
2015 Jul 21
6
[LLVMdev] GlobalsModRef (and thus LTO) is completely broken
...; libLTO.dylib`llvm::AliasAnalysis::getModRefInfo(this=0x000000010eba5c30,
> S=0x000000010a1a22e0, Loc=0x00007fff5fbf6268) + 120 at AliasAnalysis.cpp:288
> frame #3: 0x0000000103a0a814
> libLTO.dylib`llvm::MemoryDependenceAnalysis::getPointerDependencyFrom(this=0x000000010e6cf0c0,
> MemLoc=0x00007fff5fbf6268, isLoad=true, ScanIt=llvm::BasicBlock::iterator at
> 0x00007fff5fbf4390, BB=0x000000010a19ffa0, QueryInst=0x000000010a1a20c8) +
> 1908 at MemoryDependenceAnalysis.cpp:570
> frame #4: 0x0000000103a0ffa5
> libLTO.dylib`llvm::MemoryDependenceAnalysis::GetNonLocalInfo...
2012 Jan 24
4
[LLVMdev] load widening conflicts with AddressSanitizer
...ysis/MemoryDependenceAnalysis.cpp (working copy)
> @@ -323,6 +323,14 @@
> !TD.fitsInLegalInteger(NewLoadByteSize*8))
> return 0;
> + if (LI->getParent()->getParent()->hasFnAttr(Attribute::AddressSafety) &&
> + LIOffs+NewLoadByteSize > MemLocEnd) {
> + // We will be reading past the location accessed by the original program.
> + // While this is safe in a regular build, Address Safety analysys tools
> + // may start reporting false warnings. So, do't do widening.
> + return 0;
> + }
> +
>...
2015 Jul 17
2
[LLVMdev] GlobalsModRef (and thus LTO) is completely broken
On Fri, Jul 17, 2015 at 9:13 AM Evgeny Astigeevich <
evgeny.astigeevich at arm.com> wrote:
> It’s Dhrystone.
>
Dhrystone has historically not been a good indicator of real-world
performance fluctuations, especially at this small of a shift.
I'd like to see if we see any fluctuation on larger and more realistic
application benchmarks. One advantage of the flag being set is that we