Displaying 20 results from an estimated 10000 matches similar to: "[LLVMdev] Source Code Location of an Instruction"
2010 Feb 16
0
[LLVMdev] Source Code Location of an Instruction
On Feb 13, 2010, at 7:22 AM, Jingyue Wu wrote:
> I would like to know how to locate an LLVM instruction in the source
> code, i.e. to get the line number of its corresponding source code
> statement. I remember in LLVM 2.4, DbgStopPointInst is designed to
> help this locating, but it seems deprecated in the latest LLVM.
We were discussing that a few days ago:
2010 Feb 17
2
[LLVMdev] Source Code Location of an Instruction
On 16 February 2010 20:49, Trevor Harmon <Trevor.W.Harmon at nasa.gov> wrote:
> We were discussing that a few days ago:
>
> http://lists.cs.uiuc.edu/pipermail/llvmdev/2010-February/029245.html
Hi Trevor,
On a similar question, I'd want to see what line is being compiled to
which instructions. Is it possible to print the before the
instructions as comment?
For example:
2010 Feb 17
0
[LLVMdev] Source Code Location of an Instruction
On Wed, Feb 17, 2010 at 3:07 AM, Renato Golin <rengolin at systemcall.org> wrote:
> On 16 February 2010 20:49, Trevor Harmon <Trevor.W.Harmon at nasa.gov> wrote:
>> We were discussing that a few days ago:
>>
>> http://lists.cs.uiuc.edu/pipermail/llvmdev/2010-February/029245.html
>
> Hi Trevor,
>
> On a similar question, I'd want to see what line is
2010 Feb 09
3
[LLVMdev] Mapping bitcode to source code
On Feb 8, 2010, at 8:51 PM, Duncan Sands wrote:
> this can be done using debug info. Check out
> http://llvm.org/docs/SourceLevelDebugging.html
Wow, that threw me for a loop. I'm using the 2.6 release, thinking I
was up to date, but its debug output doesn't look anything like what's
described in the above link. It appears to document the upcoming 2.7
version, which
2010 Feb 09
0
[LLVMdev] Mapping bitcode to source code
On Feb 9, 2010, at 11:13 AM, Trevor Harmon wrote:
> Is there any information about these changes and why they were
> necessary?
I think I found it:
http://nondot.org/~sabre/LLVMNotes/EmbeddedMetadata.txt
Still looking for an API to access the metadata...
Trevor
2009 Apr 30
2
[LLVMdev] Pulling line number/file/path information from DbgStopPointInst instructions
Hi folks,
I had some code that used to work fine in earlier versions of LLVM,
but is now failing. I have some code that expands DbgStopPointInst
instructions to my own entry points in an opt pass, but it's currently
failing to get the file name and path back, though it is still
correctly getting line numbers. If you happen to have a code fragment
that is known to work, it would be
2010 Nov 13
3
[LLVMdev] dyn_cast vs. dynamic_cast
LLVM has a relatively large number of proprietary replacements for
standard C++ functions and classes. One of these is dyn_cast to
replace dynamic_cast. The two calls appear to be semantically
equivalent; the only difference that I can see is that dyn_cast
reportedly works on classes that have no v-table [1]. Could someone
please explain why I should use dyn_cast instead of dynamic_cast?
2010 Mar 31
2
[LLVMdev] CFG entry and exit blocks
On Mar 30, 2010, at 7:51 PM, John Criswell wrote:
> I'm too lazy to convert your .dot file into a graph file
What format should I have posted? (I'm not sure what you mean by
"graph file".) I had thought that .dot was the preferred format here,
since that's what LLVM generates (e.g., "opt -dot-cfg ...").
> First, LLVM does not guarantee that a function
2004 Nov 19
1
[LLVMdev] Loop unroll : approximate loop size for loops with debug info?
Hi, just a quick question about the intent of the
ApproximateLoopSize() function in LoopUnroll.cpp:
If a loop contains debug stoppoint intrinsics, does it make sense to count them?
My understanding is that they are removed when not running under
llvm-db anyway, so we probably shouldn't make size judgements based on
them. Is that right, or am I missing something?
Anyway, if I'm right,
2009 Apr 30
0
[LLVMdev] Pulling line number/file/path information from DbgStopPointInst instructions
On Wed, Apr 29, 2009 at 6:04 PM, Sarah Thompson <sarah at findatlantis.com> wrote:
> Hi folks,
>
> I had some code that used to work fine in earlier versions of LLVM,
> but is now failing. I have some code that expands DbgStopPointInst
> instructions to my own entry points in an opt pass, but it's currently
> failing to get the file name and path back, though it is
2010 Mar 01
2
[LLVMdev] Aborting a pass
Hi,
What's the proper way to abort a pass if something goes wrong (e.g.,
in the pass's constructor)? Do I simply call abort()? I looked through
the existing passes but didn't see an example of this. Thanks,
Trevor
2010 Apr 21
3
[LLVMdev] Books/docs on exception handling
Hi,
I'm trying to learn all that I can about exception handling from the
compiler's point of view. Although much has been written about
compiler theory in general -- parsing, code generation, you name it --
I can find almost nothing on the specific problem of exception
handling support. In fact, the most informative document I've been
able to find so far is "Bill's
2010 Nov 05
3
[LLVMdev] Identify recursion in a call graph
On Nov 2, 2010, at 11:08 PM, Nick Lewycky wrote:
> The unittests/ directory contains C++ unit tests for arbitrary C++
> APIs
> that don't fit the dejagnu model of running opt or llc over .ll files.
Thanks for the tip. Attached is a patch+testcase that adds
CallGraphNode::isRecursive to LLVM. Could someone with commit access
please review and apply? Thanks,
Trevor
2010 Nov 15
2
[LLVMdev] dyn_cast vs. dynamic_cast
On Nov 12, 2010, at 5:57 PM, Óscar Fuentes wrote:
>> Could someone
>> please explain why I should use dyn_cast instead of dynamic_cast? (I
>> thought all classes have v-tables...) Thanks,
>
> For reducing executable size, LLVM builds with RTTI disabled where
> possible.
Right, but how does that relate to dyn_cast? I thought v-tables were
present even when RTTI is not
2010 Nov 13
0
[LLVMdev] dyn_cast vs. dynamic_cast
Trevor Harmon <Trevor.W.Harmon at nasa.gov> writes:
[snip]
> Could someone
> please explain why I should use dyn_cast instead of dynamic_cast? (I
> thought all classes have v-tables...) Thanks,
For reducing executable size, LLVM builds with RTTI disabled where
possible.
2010 Oct 21
2
[LLVMdev] Splitting basic blocks while preserving machine code
On Wed, Oct 20, 2010 at 7:19 PM, Jim Grosbach <grosbach at apple.com> wrote:
>
> On Oct 20, 2010, at 5:16 PM, Trevor Harmon wrote:
>> I'm writing a pass that does some static analysis on C code. A
>> critical requirement of the pass is that it must preserve not only the
>> correctness of the code but also its timing -- It cannot add or remove
>> even one CPU
2010 Feb 24
2
[LLVMdev] Trouble with sample project template (Autoconf problem?)
I'm just getting started with an LLVM-based project, using the Sample
template as a guide:
http://llvm.org/docs/Projects.html#create
But I can't even get the Sample project itself to build without
errors. It works fine if I do "configure" and then "make", but if I
run "AutoRegen.sh" first, then do "configure", I get:
configure: error:
2010 Feb 26
3
[LLVMdev] RegisterPass isAnalysis parameter
Hi,
I'm confused about the is_analysis parameter of the RegisterPass
constructor (defined in PassSupport.h). The only explanation I can
find is that is_analysis should be set to true if the pass is "an
analysis pass, for example dominator tree pass". Can someone please
clarify what is meant by "analysis pass"?
Also -- and this is more of a C++ question than an
2010 Mar 26
2
[LLVMdev] Why is BasicBlock's copy constructor private?
On Mar 25, 2010, at 5:23 PM, me22 wrote:
> Given that LLVM is already managing the memory and presumably will do
> so for the life of your graph processing, could you just use a
> boost::directed_graph<llvm::BasicBlock*> instead?
Yeah, that was one of the first things I tried:
for (Function::iterator i = function.begin(), e = function.end(); i !=
e; ++i) {
BasicBlock
2010 Feb 24
0
[LLVMdev] Trouble with sample project template (Autoconf problem?)
On Feb 24, 2010, at 11:04 AM, Trevor Harmon wrote:
> $ ./AutoRegen.sh
> LLVM source root not found.
> Enter full path to LLVM source:/Users/twharmon/Development/LLVM/src/
> llvm-trunk/llvm
> Enter full path to LLVM objects (empty for same as source):/Users/
> twharmon/Development/LLVM/llvm/
Actually, I think this part is wrong. If I supply the same path as the
source,