Displaying 20 results from an estimated 2000 matches similar to: "llvm extract struct elements and struct size in C++"
2016 Mar 29
0
llvm extract struct elements and struct size in C++
On 28 March 2016 at 13:34, Shehbaz Jaffer via llvm-dev
<llvm-dev at lists.llvm.org> wrote:
> I want to create a database of all structures (global and local)
> defined and being used in my program. Eg. < A , <int32, int32> , B ,
> <int32, bool , char *>>.
I think the closest LLVM has is either
Module::getIdentifiedStructTypes or the class it actually uses:
2016 Mar 29
1
llvm isTokenTy() deprecated?
Hi,
I am trying to process the typeID from a type as follows:
Type *T;
if(T->isTokenTy()){
std::cout << "Token Type";
}
/home/shehbaz/courses/ece1781/project/fslice/plugin/FSlice.cpp:147:14:
error: ‘class llvm::Type’ has no member named ‘isTokenTy’
else if(T->isTokenTy())
^
I am successfully able to do this for all other 20-25 types mentioned here:
2016 Aug 25
2
InstList insert depreciated?
Jon,
> You want:
> TaintVar->insertAfter(FirstI);
This worked! Thank you.
On Thu, Aug 25, 2016 at 9:38 AM, Jonathan Roelofs
<jonathan at codesourcery.com> wrote:
>
>
> On 8/25/16 7:01 AM, Shehbaz Jaffer via llvm-dev wrote:
>>
>> I tried an alternative way of adding instruction by first getting the
>> first instruction of the basic block, and then
2016 Aug 25
2
InstList insert depreciated?
Hi llvm-devel,
I have migrated my codebase from llvm-3.6 to llvm 3.8.1-stable.
Although I was able to resolve most of the problems, I am facing
issues resolving the following:
To insert an instruction immediately after the first instruction
within a basic block, I first get all instructions in my basic block
in an instruction container list. Once that is done, I insert my new
instruction in the
2013 Jul 14
5
[LLVMdev] Analysis of polly-detect overhead in oggenc
At 2013-07-14 13:20:42,"Tobias Grosser" <tobias at grosser.es> wrote:
>On 07/13/2013 09:18 PM, Star Tan wrote:
>>
>>
>> At 2013-07-14 02:30:07,"Tobias Grosser" <tobias at grosser.es> wrote:
>>> On 07/13/2013 10:13 AM, Star Tan wrote:
>>>> Hi Tobias,
>>>
>>> Hi Star,
>[...]
>>> Before we write a
2013 Jul 14
0
[LLVMdev] Analysis of polly-detect overhead in oggenc
Tobi,
it looks like this code is the problem:
for (std::vector<Value *>::iterator PI = Pointers.begin(),
PE = Pointers.end();
;) {
Value *V = *PI;
if (V->getName().size() == 0)
OS << "\"" << *V << "\"";
else
OS << "\"" << V->getName() <<
2015 Mar 28
2
[LLVMdev] LLVMContextImpl.h not installed?
Hi all,
I 'd like to fetch a list of structures, and found that it could be done
via
LLVMContextImpl *pImpl = Context.pImpl;
pImpl->AnonStructTypes
This however needs the inclusion of LLVMContextImpl.h, which is not
contained in the includes dir, but in the lib/IR dir (next to the .cpp
files) and is not installed under /usr/local/include...
Whats the reason for this? Isn't it
2010 Dec 13
2
[LLVMdev] asm-verbose (on by default) is really, really slow
On Dec 12, 2010, at 12:52 PM, Anton Korobeynikov wrote:
>> Very true, but we do want the testsuite to run fast. Can it be sped up?
> Can't we just run testsuite with asm-verbose=0 ?
I meant llvm/test. I'm just surprised it is that slow, what is costing all the time?
-Chris
2013 Jul 14
3
[LLVMdev] Analysis of polly-detect overhead in oggenc
On 07/14/2013 08:05 AM, Star Tan wrote:
> I have found that the extremely expensive compile-time overhead comes from the string buffer operation for "INVALID" MACRO in the polly-detect pass.
> Attached is a hack patch file that simply remove the string buffer operation. This patch file can significantly reduce compile-time overhead when compiling big source code. For example, for
2012 Sep 22
2
[LLVMdev] Typedef struct types
Hi All,
I was searching for, extracting information about 'typedefed struct types' from 'module'.
I have 'struct' typedefed in a .h file. I try to use this structure instance inside a function.
My .ll file rightly defines this type in the beginning so that it can be used later. (for example below)
%struct.DEBLOCK_UNIT = type { i8*, i8*, i8*, i8, i32, i32,
2013 Jul 21
2
[LLVMdev] Analysis of polly-detect overhead in oggenc
On 07/21/2013 09:49 AM, Star Tan wrote:
> Hi all,
>
>
> I have attached a patch file to reduce the polly-detect overhead.
Great.
> My idea is to avoid calling TypeFinder in Non-DEBUG mode, so
> TypeFinder is only called in DEBUG mode with the DEBUG macro. This
> patch file did this work with following modifications:
>
>
> First, it keeps most of string information
2010 Dec 13
0
[LLVMdev] asm-verbose (on by default) is really, really slow
Chris,
When asm-verbose=true, it is spending the extra time here:
% cumulative self self total
time seconds seconds calls s/call s/call name
33.67 17.19 17.19 849 0.02 0.04 AddModuleTypesToPrinter
17.51 26.13 8.94 265849169 0.00 0.00 llvm::Value::getType()
8.74 30.59 4.46 258948922 0.00 0.00
2012 Sep 22
0
[LLVMdev] Typedef struct types
Hi Pankaj, you may find include/llvm/TypeFinder.h useful.
Ciao, Duncan.
On 22/09/12 16:26, Pankaj Gode wrote:
> Hi All,
> I was searching for, extracting information about 'typedefed struct types' from
> 'module'.
> I have 'struct' typedefed in a .h file. I try to use this structure instance
> inside a function.
> My .ll file rightly defines this type in
2013 Jul 14
0
[LLVMdev] Analysis of polly-detect overhead in oggenc
I have found that the extremely expensive compile-time overhead comes from the string buffer operation for "INVALID" MACRO in the polly-detect pass.
Attached is a hack patch file that simply remove the string buffer operation. This patch file can significantly reduce compile-time overhead when compiling big source code. For example, for oggen*8.ll, the compile time is reduced from
2013 Jul 22
0
[LLVMdev] Analysis of polly-detect overhead in oggenc
At 2013-07-22 01:40:31,"Tobias Grosser" <tobias at grosser.es> wrote:
>On 07/21/2013 09:49 AM, Star Tan wrote:
>> Hi all,
>>
>>
>> I have attached a patch file to reduce the polly-detect overhead.
>
>Great.
>
>> My idea is to avoid calling TypeFinder in Non-DEBUG mode, so
>> TypeFinder is only called in DEBUG mode with the DEBUG
2013 Oct 18
1
[LLVMdev] Iterate through a Module's StructTypes
Hello,
I'm updating a legacy code using LLVM 2.5 where it has an iteration through
a Module's TypeSymbolTable to process each StructType.
In LLVM 3.4, TypeSymbolTable has been removed. I can only find the
LLVMContextImpl instance of a Module's LLVMContext which has
AnonStructTypes and NamedStructTypes two maps. However, LLVMContextImpl is
an opaque class which cannot be directly
2018 Feb 24
1
Parsing a bit code file
I am trying to parse LLVM IR from a bit code file. I went through the
following steps.
hello.cpp
#include <iostream>
int main() {
std::cout << "Hello world!" << "\n";
return 0;}
dump.cpp
#include <llvm/IR/Module.h>#include <llvm/IRReader/IRReader.h>#include
<llvm/IR/LLVMContext.h>#include <llvm/Support/SourceMgr.h>
using
2011 Feb 04
12
Run Nice Player .nmf app
Hi all,
I'm needing/trying to save linux in my company. I have files in format .nmf (from a company called Nice) to listen. Don't have open or proprietary codecs for linux. I can only to the Nice Player. <Ubuntu Desktop>
I've tried:
1- copy of folder installed in the windows for linux ubuntu desktop and run "wine nice.exe" and dont' run
2- run the package of
2017 Jun 05
2
Question about llvm::Value::print performance
Hi,
I want to use llvm::Value::print to output the assembly strings for llvm::Instructions
inside a rather large llvm::Module (linked module with lots of types/...).
I started with plain ::print and switched over to
http://llvm.org/docs/doxygen/html/classllvm_1_1Value.html#a04e6fc765eeb0c4c90ac5d55113db116
with a ModuleSlotTracker I pass in myself to avoid some complexity.
Still now I have
2011 Dec 29
2
[LLVMdev] DW_AT_location not getting generated for local variables
I figured out my previous problem with DIBuilder. However, now I can't seem
to get the compiler to emit location information for local variables.
Here's how my IR looks:
---
define i32 @"\01_main"() {
init:
%exception1 = alloca i8*
%0 = alloca i32
%"bar:Int32" = alloca i32
%1 = alloca i32
%2 = alloca i32*
br label %code
code: