similar to: [LLVMdev] expression statements, volatiles, and C vs. C++

Displaying 20 results from an estimated 20000 matches similar to: "[LLVMdev] expression statements, volatiles, and C vs. C++"

2010 Mar 06
0
[LLVMdev] expression statements, volatiles, and C vs. C++
LLVM doesn't know about any of this C/C++ specific stuff. If g++ do something (such as the load), so will llvm-g++. I'd suggest you send this to the clang mailing list. BTW, this issue is very interesting. I've never used C++ for embedded systems so never realised this difference. On Sat, Mar 6, 2010 at 1:47 AM, John Regehr <regehr at cs.utah.edu> wrote: > The question is,
2013 Jan 11
2
[LLVMdev] Make a comparation with IR builder
Hi All, I'm writing a code generation with my compiler. I read sever example and documentation but I did understand what I make wrong. What I try to do is a compare a local variable with a constant. But when I create a ICMP instruction I get that instruction are not of same type. I'm using llvm by svn repository updated at two week ago. The code that I try to generation is something
2020 Sep 11
2
[Debuginfo] Changing llvm.dbg.value and DBG_VALUE to support multiple location operands
> Can you elaborate what "direct" means? I'm having trouble understanding what the opposite (a non-exact value) would be. Apologies, "exact" was a misleading/incorrect term. By direct, I mean that the expression computes the value of the variable, as opposed to its memory address, or the value that it points to. Within LLVM, where we don't have DW_OP_reg/DW_OP_breg
2013 Jan 11
0
[LLVMdev] Make a comparation with IR builder
you're not showing enough code. What does accept() do? Based on your description, I strongly suspect that your alloca and constant are not the same type. Remember that alloca returns a pointer type that you must load to get at the actual variable. On Jan 11, 2013 3:28 AM, "Manuele Conti" <manuele.conti at sirius-es.it> wrote: > Hi All, > I'm writing a code
2013 Jan 11
2
[LLVMdev] Make a comparation with IR builder
Hi Justin, my class is a visitor pattern and I use accept method to go recursive in suboject in my AST. In locals I store AllocaInst pointer. void *visit(var1_init_decl_c *symbol) { llvm::Type *lType; varNames.clear(); varType = ""; symbol->var1_list->accept(*this); /* get a vector contains variable names */ symbol->spec_init->accept(*this); /* Store in
2013 Jan 11
0
[LLVMdev] Make a comparation with IR builder
On Fri, Jan 11, 2013 at 8:20 AM, Manuele Conti <manuele.conti at sirius-es.it>wrote: > Hi Justin, > my class is a visitor pattern and I use accept method to go recursive in > suboject in my AST. > In locals I store AllocaInst pointer. > > > void *visit(var1_init_decl_c *symbol) { > llvm::Type *lType; > > varNames.clear(); > varType = "";
2010 May 12
2
[LLVMdev] [cfe-dev] New libc++ LLVM Subproject
On May 11, 2010, at 8:40 PM, Andrew Sutton wrote: > > What's driving libc++? > > The possibility of being a superior solution. > > I thought "to support Apple applications" from the previous post was sufficient motivation :) Either way, I'm excited about a new library. Plus, it looks a little easier to read (from the tiny amount of code that I've looked
2012 Nov 25
0
[LLVMdev] Uninitialized variable - question
On 11/24/2012 04:14 AM, john skaller wrote: > > On 24/11/2012, at 10:21 PM, Nick Lewycky wrote: > >> >> Passing an uninitialized value as a function argument is undefined behaviour on the spot, regardless of what the callee does (even if it never references that argument). > > Cite reference? No? Then you're guessing ;) This is a rule in C++ that I'm not sure
2013 Sep 13
2
[LLVMdev] [RFC] New function attributes for errno-setting functions
----- Original Message ----- > On 9/12/2013 7:44 PM, Hal Finkel wrote: > > > > To fix this problem, I think that we need to stop treating errno as > > some arbitrary external state, and model is explicitly. > > In such case it would make sense to know when "errno" is read. This > way > we could detect whether it's actually used, whether or not the
2011 Sep 30
2
[LLVMdev] Definition of C/C++ integral conversion(was Re: nsw/nuw for trunc)
On 08/11/2011 02:56 PM, Duncan Sands wrote: > Hi Florian, > >> we'd like to be able to check for loss of information in trunc operations in >> our LLVM-based bounded model checker [1]. For this it is important if the >> trunc was on a signed or unsigned integer, so we need nsw and nuw flags for >> this. Would you accept a patch that adds these flags to LLVM (and
2013 Feb 26
2
[LLVMdev] arm compiler benchmarks
Hi, I didn't do any serious benchmarking but so far I never found a case where LLVM does better than IAR on CortexM0, but I saw a lot of cases where IAR output is better than LLVM... That said I did not use -Os or -Oz, I just used -O3. A recurrent situation is that LLVM push/pop one or two extra registers compared to IAR, I guess it does so in order to comply with a standard ABI or
2013 Feb 27
2
[LLVMdev] arm compiler benchmarks
What about benchmarks on other Arm devices? On 02/26/2013 02:52 PM, Jim Grosbach wrote: > Cortex-M0 is a Thumb1 only device. There hasn't been any concerted > effort to tune LLVM's Thumb1 output in quite a long time. Even back then > (2008 or so), the effort was mainly to get it to work acceptably, with > the real performance tuning work being done for Thumb2. I'm not >
2013 Feb 26
0
[LLVMdev] arm compiler benchmarks
Cortex-M0 is a Thumb1 only device. There hasn't been any concerted effort to tune LLVM's Thumb1 output in quite a long time. Even back then (2008 or so), the effort was mainly to get it to work acceptably, with the real performance tuning work being done for Thumb2. I'm not surprised that an embedded market focussed compiler like IAR is better tuned for a chip like that. -Jim On Feb
2007 Sep 11
2
[LLVMdev] volatiles
The attached file contains some simple functions that manipulate volatile varibles. The functions near the top of the file should turn into code that loads from x and then stores to it. The LLVM version on the web (not sure if it's the latest...) gets most of these wrong. John Regehr -------------- next part --------------
2013 Jan 10
1
[LLVMdev] Using C++'11 language features in LLVM itself
> How crazy would it be for us to start using basic C++'11 language features (but not C++'11 library features) in LLVM: > things like auto | It can make code less readable because of missing types. When compiler can deduce type, it doesn't always mean that human do it easily when reading the code. I'd argue that auto should only be used in cases where the precise type being
2013 Sep 13
0
[LLVMdev] [RFC] New function attributes for errno-setting functions
On 9/13/2013 2:23 PM, Hal Finkel wrote: > > Maybe the easiest way would be to insert an intrinsic @llvm.errno.read() whenever errno (as a source token) appears in the source as an rvalue (and do some similar thing when it appears as a lvalue). Thoughts? I think the major problem is still with "errno" defined as a preprocessor macro, as it may not look like errno by the time the
2013 Feb 27
0
[LLVMdev] arm compiler benchmarks
I've not run any on non-iOS devices, and haven't looked at GCC since v4.2.1 due to licensing issues, so I don't have a good feel for comparative benchmarking. -Jim On Feb 26, 2013, at 4:20 PM, Reed Kotler <rkotler at mips.com> wrote: > What about benchmarks on other Arm devices? > > On 02/26/2013 02:52 PM, Jim Grosbach wrote: >> Cortex-M0 is a Thumb1 only
2010 May 12
0
[LLVMdev] [cfe-dev] New libc++ LLVM Subproject
> > This was compiled with g++-4.-2 -O3 (without rvalue references, which would have no effect on sorting ints anyway). Errr, that is a pretty old version at this point. Also this was before significant performance improvements were target at libstdc++ *and* g++. It seems a bit strange to compare something from today to something that is now 3 release versions old.
2013 Nov 07
0
[LLVMdev] Should remove calling NULL pointer or not
On Thu, Nov 7, 2013 at 11:02 AM, Yin Ma <yinma at codeaurora.org> wrote: > Hi John, > > > > It seems the dereferencing a NULL pointer is undefined behavior but > > Calling a function through a null pointer seems o.k. > What is the well defined behavior of calling a null function pointer? > > > If so , for this place, we need comment out the check. >
2007 Sep 12
0
[LLVMdev] volatiles
On Sep 11, 2007, at 3:49 PM, John Regehr wrote: > The attached file contains some simple functions that manipulate > volatile > varibles. The functions near the top of the file should turn into > code > that loads from x and then stores to it. The LLVM version on the > web (not > sure if it's the latest...) gets most of these wrong. Hi John, This appears to work