similar to: Potential issue with noalias @malloc and @realloc

Displaying 20 results from an estimated 40000 matches similar to: "Potential issue with noalias @malloc and @realloc"

2017 Apr 12
4
Potential issue with noalias @malloc and @realloc
Hi Daniel, On April 11, 2017 at 6:22:34 PM, Daniel Berlin (dberlin at dberlin.org) wrote: > Note: This is a generic problem with any situation where noalias exists but > the pointers are proven equal :) Yes. > TBAA, for example, has the same generic issue, we just drop the tbaa > metadata and declare it okay, even though it would have been UB at the > source level. Yes.  I
2017 Apr 11
3
Potential issue with noalias @malloc and @realloc
Hi Kevin, On April 11, 2017 at 4:14:14 PM, Flamedoge (code.kchoi at gmail.com) wrote: > So only "non-freed" malloc pointers are No-Alias which makes it > flow-sensitive. There is no reason why malloc couldn't return previously > freed location. Yes. Talking to Nick Lewycky on IRC, I figured out a shorter way of saying what I wanted to say.  We know that programs like this
2017 Apr 12
4
Potential issue with noalias @malloc and @realloc
> > > It seems to me that there are two ways of thinking about this: either the > value of a pointer in IR is richer than its bit sequence, in which case > replacing p1 with p0 in a block predicated by p0 == p1 is an incorrect > transformation if you cannot prove that one pointer was based on the other, > Which would be a non-starter just from the cost of doing so, not to
2017 Apr 12
3
Potential issue with noalias @malloc and @realloc
The corresponding line does not exist, and it is in fact, wrong :) C11 says nothing like that. C++14 says: "The lifetime of an object of type T begins when: — storage with the proper alignment and size for type T is obtained, and — if the object has non-trivial initialization, its initialization is complete. The lifetime of an object of type T ends when: — if T is a class type with a
2017 Apr 11
2
[RFC] Design of a TBAA sanitizer
On Tue, Apr 11, 2017 at 3:14 PM, Sanjoy Das <sanjoy at playingwithpointers.com> wrote: > Hi Kostya, > > On April 11, 2017 at 2:39:44 PM, Kostya Serebryany (kcc at google.com) wrote: > > > ptr0 = malloc(); > > > free(ptr0); > > > ptr1 = malloc(); > > > > > > ptr0 and ptr1 will be NoAlias despite overlapping (there is actually a > >
2017 Apr 11
2
[RFC] Design of a TBAA sanitizer
On Tue, Apr 11, 2017 at 1:40 PM, Sanjoy Das <sanjoy at playingwithpointers.com> wrote: > Hi, > > On April 11, 2017 at 1:37:20 PM, Sanjoy Das > (sanjoy at playingwithpointers.com) wrote: > > Hi Kostya, > > > > On April 11, 2017 at 1:30:10 PM, Kostya Serebryany (kcc at google.com) > wrote: > > > > > of course, but accesses are done via pointers,
2017 Apr 12
2
Potential issue with noalias @malloc and @realloc
On Tue, Apr 11, 2017 at 7:02 PM, Daniel Berlin <dberlin at dberlin.org> wrote: > >> >> > It would require semantic changes to llvm ir to fix this to properly >> > express object lifetimes that is compatible with all the random babble >> > standards have written down :) >> > For now, the only sane solution IMHO, is to say that no alias implies
2011 Jan 20
2
[LLVMdev] Modifying the patterns/ instruction selection phase in LLVM 2.7
On 1/20/11 12:27 PM, Venkatraman Govindaraju wrote: Just out of curiosity, have either of you considered writing an LLVM transform that simply replaces these call instructions with inline assembly code that does what you want? If that works, it seems much simpler than modifying/enhancing the code generator. -- John T. > I have similar requirements for my project. This is what I do. >
2011 Jan 20
0
[LLVMdev] Modifying the patterns/ instruction selection phase in LLVM 2.7
For my case, I can't replace these call instructions with inline assembly code because I need to encode the registers into the "number". For instance, if the call instruction is %result = call i32 @foo(i32 %a) and the result is assigned to register %l0 and the variable "a" to register %l1, then I encode all foo, %l0 and %l1 and generate a sethi instruction. thanks,
2017 Apr 11
2
[RFC] Design of a TBAA sanitizer
Hi Kostya, On April 11, 2017 at 1:30:10 PM, Kostya Serebryany (kcc at google.com) wrote: > of course, but accesses are done via pointers, and if TBAA queries > MayAlias(AccessViaP1, AccessViaP2) > there should (??) be a point in the IR where both P1 and P2 exist together > and can be compared. That may not be possible (though I'm second guessing what exactly you have in mind so
2007 Dec 27
2
Failure of gvinum after panic
Hi all, I have some problems with my gvinum setup after the system panic'ed. Afterwards the system fails finding the plexes to the subdisks (or at least that is what I can understand after having searched the gvinum source code for the error string in the DMESG log..) The machine is an IBM Netfinity 5000 and the internal HW self tests does not find any errors in the hw. Luckily my root is
2015 May 21
2
[LLVMdev] How can I remove these redundant copy between registers?
Hi, I've been working on a Blackfin backend (llvm-3.6.0) based on the previous one that was removed in llvm-3.1. llc generates codes like this: 29 p1 = r2; 30 r5 = [p1]; 31 p1 = r2; 32 r6 = [p1 + 4]; 33 r5 = r6 + r5; 34 r6 = [p0 + -4]; 35 r5 *= r6; 36 p1 = r2; 37 r6 = [p1 + 8]; 38 p1 = r2; p1 and r2 are in different register classes. A p*
2011 Dec 14
1
uniroot function question
I have one equation, two unknowns, so I am trying to build the solution set by running through possible values for one unknown, and then using uniroot to solve for the accompanying second solution, then graphing the two vectors. p0 = .36 f = function(x) 0.29 * exp(5.66*(x - p0)) f.integral = integrate(f, p0, 1) p1 = p0 + .01 i = 1 n = (1 - p0)/.01 p1.vector = rep(0,n) p2.vector = rep(0,n) for (i
2007 Dec 17
2
Must be obvious but not to me : problem with regular expression
Hi, I have a vector called nfichiers of 138 names of file whose extension is .P0 or P1 ... to P8. The script is not the same when the extension is P0 or P(1 to 8). Examples of file names : [128] "Output0.P0" [129] "Output0.P1" [130] "Output0.P2" [131] "Output01102007.P0" [132] "Output01102007.P1" [133]
2009 Mar 15
5
[LLVMdev] Overlapping register classes
Hi, I am writing a backend for the Blackfin processor from Analog Devices. I just started so I still have a lot to learn about the code generator. So far, I can compile test/CodeGen/Generic/BasicInstrs.ll correctly, but that is about it. The Blackfin 32-bit registers divide naturally into several classes. I have modelled these register classes without knowing anything about what the code
2017 Dec 26
3
Why is remalloc not marked as noalias?
Hello, According to my understanding, it seems that the result of realloc will not technically alias the original pointer. When the realloc is done in-place the reference <http://en.cppreference.com/w/c/memory/realloc> says: "The original pointer ptr is invalidated and any access to it is undefined behavior (even if reallocation was in-place)." Additionally from the C11 standard
2006 Apr 03
1
Cannot compile metamail
Hello all, I've been trying to compile metamail on Centos4.2. But no luck so far. rpmbuild --rebuild metamail-2.7-30AS.src.rpm Installing metamail-2.7-30AS.src.rpm Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.96604 + umask 022 + cd /usr/src/redhat/BUILD + LANG=C + export LANG + unset DISPLAY + cd /usr/src/redhat/BUILD + rm -rf mm2.7 + /bin/gzip -dc /usr/src/redhat/SOURCES/mm2.7.tar.Z + tar
2019 Jun 11
3
[InstCombine] addrspacecast assumed associative with gep
The following combine(-enabling transformation) makes me uncomfortable:   gep(addrspacecast(gep p0) to p1)   addrspacecast(gep(gep p0)) to p1 It's applied at visitAddrSpaceCast in InstCombineCasts.cpp. Before this, I'd always assumed address spaces were very much "user domain". Datalayout even supports marking a space as "non-integral", to designate that manipulation as
2003 Oct 31
2
vinum question: how could one correctly delete vinum module?
Dear colleagues, [I'm under 4-STABLE] What is the correct sequence to delete existing vinum module (for example, raid10) and do *not* use -f flags for vinum? in my case t is raid10 vovume: vinum -> l -r t V t State: up Plexes: 2 Size: 8191 MB P t.p0 S State: up Subdisks: 2 Size: 8191 MB P t.p1 S State:
2011 Oct 15
2
[LLVMdev] Live code elimination problem in code generation
Hello. :) I've met a problem that eliminates a live code in code generation phase. The initially generated code is shown as follows (as a pseudo code): ( Before pseudo-code expansion. ) ---------- loop: : : set P0 <- xxx ( P0: a physical register for a parameter of function F ) set P1 <- yyy ( P1: a physical register for a parameter of function F ) SELECT_CC z1, z2, z3, ...