Displaying 20 results from an estimated 3000 matches similar to: "[LLVMdev] Finding Things In SymbolTable"
2020 May 18
2
Understanding LLD's SymbolTable's use of CachedHashStringRef
I was looking at the SymbolTable code in LLD COFF and ELF recently, and I’m confused by the use of CachedHashStringRef.
From what I understand, a CachedHashStringRef combines a StringRef with a computed hash. There’s no caching going on in the CachedHashStringRef itself; that is, if you construct CachedHashStringRef("foo"), and then construct a second
2003 Nov 17
3
[LLVMdev] Question about structure of SymbolTable
I was trying to look through the SymbolTable code for LLVM. What does
the SymbolTable for a Module contain? Is it just GlobalVariables and
Functions? How are program constants and static variables declared
within functions handled? When I said program constants, I meant
things like strings (e.g., char* foo = "Hello world\n";). Thanks in
advance.
Sincerely,
Brian
Brian M.
2003 Nov 17
0
[LLVMdev] Question about structure of SymbolTable
Brian,
Global symbols including new named types are named in the global symbol
table. In addition each function contains a local symbol table naming
local items, including temporary variables.
I'm busy documenting all this, but I'm also busy writing a code generator
for my architecture, so haven't gotten enough through everything to
completely document the bytecode language.
2004 May 25
1
[LLVMdev] ATTENTION: SymbolTable Change!!
LLVMers,
On the way to resolving bug 122, I am committing my SymbolTable rewrite.
If you are working on anything that uses the SymbolTable, I suggest you
read the documentation in include/llvm/SymbolTable.h.
The changes I've committed reduce the use of Type::TypeTy. This static
member will go away in the future, so please do not propagate new code
that uses it. There is no reason to use it
2003 Nov 16
0
[LLVMdev] Packages
On Sun, 2003-11-16 at 13:01, Vipin Gokhale wrote:
> While on the subject of annotating bytecode with analysis info, could I
> entice someone to also think about carrying other types of source-level
> annotations through into bytecode ? This is particularly useful for
> situations where one wants to use LLVM infrastructure for its
> whole-program optimization capabilities,
2018 Jul 25
2
are the LLD libraries thread safe?
E.g. Is it intended to be allowed to call lld::elf::link in 2 different
threads at the same time?
Follows is an example Valgrind error I ran into when doing the above.
I'll try putting a global resource lock on invoking LLD and see if it
solves the problem.
==5467== Invalid write of size 8
==5467== at 0x525509:
llvm::DenseMapBase<llvm::DenseMap<llvm::CachedHashStringRef, int,
2018 Jul 25
2
are the LLD libraries thread safe?
Hi Andrew,
LLD relies on various bits of global state which are manipulated during the
link, so I wouldn't expect it to be thread safe at that level, although it
does attempt to reset that global state at the start of each call to
link(), so it should be callable sequentially.
Regards,
James
On 25 July 2018 at 02:37, Andrew Kelley via llvm-dev <
llvm-dev at lists.llvm.org> wrote:
2011 Jul 09
1
[LLVMdev] getting and setting array indices c interface
I really can't figure out how to get and set array indices from the c
interface.
so to get an element I'm calling
tindex = *fn\SymbolTable(*index\name)
index = LLVMBuildLoad(builder,tindex,"index")
arr = *fn\SymbolTable(*array\name)
arrptr = LLVMBuildLoad(Builder,arr,"arrayptr")
tmp = LLVMBuildGEP(Builder,arrptr,index,0,"ptr")
ptr =
2004 May 11
3
[LLVMdev] ExecutionEngine/Interpreter/ExternalFunctions.cpp
Hi,
I'm working on bug 122, consolidating the interface to the SymbolTable
class. In doing so, I found the function below which traverses the
symbol table but apparently unnecessarily. Before I remove the
traversal, I thought I better check with you guys. Posted this to the
list because it looks like _everyone_ has edited this file :)
In the code below, the IOB variable is the only thing in
2004 May 11
0
[LLVMdev] ExecutionEngine/Interpreter/ExternalFunctions.cpp
I mis-stated what I think should be deleted.
The block of code from "GlobalVariable *IOB = 0;" to the end of the loop
should be delted because the only effect the loop has is on the IOB
variable and that variable is never used after the loop.
Reid.
On Tue, 2004-05-11 at 18:14, Reid Spencer wrote:
> Hi,
>
> I'm working on bug 122, consolidating the interface to the
2003 Nov 16
0
[LLVMdev] Packages
On Sun, 2003-11-16 at 17:13, Chris Lattner wrote:
> > The point here is that XPL needs to keep track of what a given variable
> > represents at the source level. If the compiler sees a map that is
> > initially small it might represent it in LLVM assembly as a vector of
> > pairs. Later on, it gets optimized into being a hash table. In order to
> > do that and keep
2011 Oct 16
2
[LLVMdev] Static destructor problem with recent HEAD
On Sat, Oct 15, 2011 at 9:49 PM, Chandler Carruth <chandlerc at google.com>wrote:
> On Sat, Oct 15, 2011 at 9:20 PM, Talin <viridia at gmail.com> wrote:
>
>> I recently updated my version of LLVM from revision 140108 to 142082, and
>> several things broke, most of which were easily fixed. However, I'm now
>> getting a "pure virtual method called"
2004 May 11
1
[LLVMdev] ExecutionEngine/Interpreter/ExternalFunctions.cpp
And, one more weird thing in this function. The FILESize static variable
is never initialized so its likely initial value is 0 due to zero fill
on many MMUs. The value is never written and used as a divisor. Why
hasn't this function caused an arithmetic violation? Because the IOBBase
point, also a static variable is initialized to zero and never modified
and used in a conditional that thwarts
2011 Oct 16
0
[LLVMdev] Static destructor problem with recent HEAD
Interestingly, I also get a similar error in a different executable (my
unittest):
pure virtual method called
terminate called without an active exception
0 tartc 0x00000001010a8265 PrintStackTrace(void*) + 53
1 tartc 0x00000001010a88cc SignalHandler(int) + 364
2 libSystem.B.dylib 0x00007fff831341ba _sigtramp + 26
3 libSystem.B.dylib 0x7261742e65637365 _sigtramp +
2003 Nov 16
3
[LLVMdev] Packages
> The point here is that XPL needs to keep track of what a given variable
> represents at the source level. If the compiler sees a map that is
> initially small it might represent it in LLVM assembly as a vector of
> pairs. Later on, it gets optimized into being a hash table. In order to
> do that and keep track of things, I need to know that the vector of
> pairs is
2006 Mar 19
1
[LLVMdev] Idioms for retrieving global symbols and inheritance
Hello,
I have a couple of doubts, as listed below:
1. To list all the global variables in the module, I am iterating
using type_iterator and for each Type I get, I am using value_iterator
to iterate over Values . In the second iteration I am getting
unexpected results. For each type obtained from type_iterator->second,
value_iterator->first produces the same list as what
2004 Jun 18
0
[LLVMdev] MachineOperand: GlobalAddress vs. ExternalSymbol
On Fri, 18 Jun 2004, Vladimir Prus wrote:
> > actually exist in the LLVM module for the function. In particular, this
> > would include any functions in a code-generator specific runtime library
> > and malloc/free. The X86 code generator compiles floating point modulus
> > into fmod calls, and 64-bit integer div/rem into runtime library calls.
>
> And why isn't
2016 Nov 08
2
leaks in lld on the bot
The asan bootstrap bot is unhappy with lld.
Rui, os someone, please take a look.
http://lab.llvm.org:8011/builders/sanitizer-x86_64-
linux-bootstrap/builds/138/steps/check-lld%20asan/logs/stdio
==26011==ERROR: LeakSanitizer: detected memory leaks
Direct leak of 184 byte(s) in 1 object(s) allocated from:
#0 0x72fab0 in operator new(unsigned long)
2016 Nov 08
3
leaks in lld on the bot
On Mon, Nov 7, 2016 at 5:53 PM, Davide Italiano <davide at freebsd.org> wrote:
> On Mon, Nov 7, 2016 at 4:43 PM, Kostya Serebryany via llvm-dev
> <llvm-dev at lists.llvm.org> wrote:
>> The asan bootstrap bot is unhappy with lld.
>> Rui, os someone, please take a look.
>>
>>
2003 Dec 31
1
[LLVMdev] Getting A Type By Name
What's the RightWay(tm) to get a named type?
I want to use the Module's symbol table as a repository for named types.
But, it doesn't have a way to get the type out unless you already know
what it is (i.e. the addTypeName() method). Similarly the SymbolTable
class's lookup() method requires a type as well. The Type class also
didn't have anything obvious.
I want something