search for: xiaolong

Displaying 20 results from an estimated 50 matches for "xiaolong".

2010 Jun 18
3
[LLVMdev] Question on Load and GetElementPtr instructions
...ementptr inbounds (%struct.Node* @head, i32 0, i32 0) %20 = load %struct.Node** %19, align 16 ; <%struct.Node*> [#uses=1] What it the cause? What are the differences between the "GetElementPtr inbounds" instruction and just the "GetElementPtr" instruction? Thanks, Xiaolong
2010 Jun 10
2
[LLVMdev] For clarifying the "<Result>" in Instructions
.... So, where is "<result>" defined? Is it an integral part of an instruction? Consider the "getelementptr" instruction: <result> = getelementptr <pty>* <ptrval>{, <ty> <idx>}* How is the "<result>" represented? Best, Xiaolong
2010 Jun 10
2
[LLVMdev] For clarifying the "<Result>" in Instructions
...es=4] Here "%this_addr" (which is not a argument) is actually a string. Am I right? And this name is recorded in the symbol table of a module. In case that an instruction does not have a name, what then happens? I mean, will the symbol table contains an entry for it? Thanks, Best, Xiaolong > On Thu, Jun 10, 2010 at 8:34 AM, Xiaolong Tang <xiaolong.snake at gmail.com> wrote: > > > > In the language specifications, many instructions have this form: > > > >  <result> = ... > > > > So, where is "<result>" defined? Is it...
2010 Jun 10
0
[LLVMdev] For clarifying the "<Result>" in Instructions
Yes, it's an integral part of the Instruction. You can change it by providing a name when you create the instruction. Reid On Thu, Jun 10, 2010 at 8:34 AM, Xiaolong Tang <xiaolong.snake at gmail.com> wrote: > Hi all, > > In the language specifications, many instructions have this form: > >  <result> = ... > > So, where is "<result>" defined? Is it an integral part of an instruction? > Consider the "getel...
2010 Jun 18
0
[LLVMdev] Question on Load and GetElementPtr instructions
Good evening, Tang. > What is the type of the first operand of the instruction (i.e., > getOperand(0))? It might be ConstantExpr. You may use dyn_cast<GEPOperator>(getPointerOperand()). Also GetElementPtrInst* can be casted to GEPOperator. ...Takumi 2010/6/18 Xiaolong Tang <xiaolong.snake at gmail.com>: > > Hey, > > Considering the following instruction: > >  %20 = load %struct.Node** getelementptr inbounds (%struct.Node* >          @head, i32 0, i32 0), align 16 ; <%struct.Node*> [#uses=1] > > What is the type of the first...
2010 Jun 07
4
[LLVMdev] Another two questions on LLVM
...properties does the callgraph generated by LLVM has? One property I am interesting in is whether the callgraph is a safe approximation of its corresponding run-time callgraph. Third, does LLVM provide any strategy to resolve function calls? If yes, what strategies does it employ? Thanks! Best, Xiaolong
2010 Aug 27
3
[LLVMdev] How to demange C++ names
Hey all, Just wondering if LLVM has any command options or tool to allow for demangling C++ names from the LLVM bitcode? Thanks! Best, Xiaolong
2010 Aug 27
5
[LLVMdev] How to demange C++ names
.... By the way, when I run c++filt -v It outputs: GNU c++filt 070207 20070207 Copyright 2005 Free Software Foundation, Inc. This program is free software; you may redistribute it under the terms of the GNU General Public License. This program has absolutely no warranty. Best, Xiaolong
2012 May 22
4
[LLVMdev] How to get llvm bitcode executed
...apture, i8* nocapture, i64, i32, i1) nounwind declare i32 @llvm.atomic.load.add.i32.p0i32(i32* nocapture, i32) nounwind declare void @llvm.memory.barrier(i1, i1, i1, i1, i1) nounwind declare void @_ZSt20__throw_out_of_rangePKc(i8*) noreturn declare i64 @strlen(i8*) declare void @abort() Xiaolong
2012 May 22
0
[LLVMdev] How to get llvm bitcode executed
Guess I have found some clues. Some necessary libraries have to be loaded while trying to generate native code or do interpretation. Then another question emerges: Is there a way to determine the necessary libraries in need? And where to locate these necessary libraries? Xiaolong > Hi All, > > I have a program that uses C++ STL a lot. To have the source code for > STL functions, I undefined "_GLIBCXX_EXTERN_TEMPLATE" in > c++config.h. In spite of this, after compilation (via clang) and > linking (via llvm-ld), the resulting bitcode contains a...
2010 Sep 29
3
[LLVMdev] gcc, conceptgcc, and llvm-gcc
...former difference, though I have some idea of the latter difference. Would someone briefly please point out the changes of llvm-gcc relative to gcc? Hopefully, with your input, I could evaluate the efforts when I patch a normal gcc with the differences between gcc and llvm-gcc :) Thanks! Best, Xiaolong
2010 Jul 29
1
[LLVMdev] How does the debug info correspond to the normal info?
...rieve the type of "x". The type might be, to some extent, different from the declared type for "x" in the source code. So, generally, is it possible to infer the declared type of a variable (e.g. an argument) from the type of the variable in LLVM code or any other basis? Best, Xiaolong
2010 Aug 27
0
[LLVMdev] How to demange C++ names
On 27 August 2010 18:56, Xiaolong Tang <xiaolong.snake at gmail.com> wrote: > Just wondering if LLVM has any command options or tool to allow for > demangling C++ names from the LLVM bitcode? c++filt? --renato
2010 Jun 10
0
[LLVMdev] For clarifying the "<Result>" in Instructions
On Thu, Jun 10, 2010 at 9:00 AM, Xiaolong Tang <xiaolong.snake at gmail.com> wrote: > > Hello Reid, > > Thanks. > >> Yes, it's an integral part of the Instruction.  You can change it by >> providing a name when you create the instruction. > > Following your hint, can I understand in this following...
2010 Jun 07
2
[LLVMdev] Two quick questions on call graph nodes
...for the string String(const char str[]); // Destructor ~String(); // Assignment operator String& operator=(const String& that); private: int length; int capacity; char* buffer; }; #endif Best, Xiaolong
2012 May 22
2
[LLVMdev] How to get llvm bitcode executed
...t that simple, and I have not gotten through the compilation process. For instance, "llc -o test.s test.bc" works and generates "test.s"; "g++ -o test.o test.s" throws out "Unknown pseudo-op: .cfi_startproc" messages, however. Not sure about the reasons yet. Xiaolong Duncan Sands wrote: > > Hi Xialong, > > > I have a program that uses C++ STL a lot. To have the source code for > > STL functions, I undefined "_GLIBCXX_EXTERN_TEMPLATE" in > > c++config.h. In spite of this, after compilation (via clang) and > > link...
2012 May 23
0
[LLVMdev] How to get llvm bitcode executed
Hi Xiaolong, > As Duncan described, "lli -load=libstdc++.dylib ..." works. I, > however, encounted an "Illegal instruction" message, while I was > trying to interpret a large program. are you using the interpreter or the JIT? So, does lli have a debug switch > for dumping o...
2010 Jun 09
0
[LLVMdev] Two quick questions on call graph nodes
Hi Xiaolong, I changed the code so it now prints "external node" instead. The external node represents all functions external to the module. So, for example, if a function F calls a function G, but G is only declared in the module, rather than being defined there, then the callgraph gets an edge fr...
2010 Aug 27
0
[LLVMdev] How to demange C++ names
On Aug 27, 2010, at 11:43 AM, Xiaolong Tang wrote: > Hi Renato, > >>> Just wondering if LLVM has any command options or tool to allow for >>> demangling C++ names from the LLVM bitcode? >> >> c++filt? > > Do you refer to any particular version of c++filt? I tried, but seemed > not to wor...
2012 Mar 29
1
[LLVMdev] What is the right way to register an alias analysis pass
...", "RCI Pass"); However, registering a type-based analysis uses: INITIALIZE_AG_PASS(...) I think, registering an alias analysis is special, as an alias analysis should be chained to other alias analysis. So, my question is how to register an alias analysis properly. Thanks. Xiaolong