Displaying 17 results from an estimated 17 matches for "getemptykey".
2007 Sep 05
2
[LLVMdev] Seeing a crash with ConstantFP::get
...onacci.exe!llvm::APFloat::zeroSignificand() Line 387 +
0x15 bytes C++
Fibonacci.exe!llvm::APFloat::APFloat(const
llvm::fltSemantics & ourSemantics={...}, unsigned __int64 value=1) Line
307 C++
Fibonacci.exe!`anonymous
namespace'::DenseMapAPFloatKeyInfo::getEmptyKey() Line 277 + 0x11 bytes
C++
Fibonacci.exe!llvm::DenseMap<`anonymous
namespace'::DenseMapAPFloatKeyInfo::KeyTy,llvm::ConstantFP
*,A0x5b1fa632::DenseMapAPFloatKeyInfo>::getEmptyKey() Line 236 + 0x9
bytes C++
Fibonacci.exe!llvm::DenseMap<`anonymous
nam...
2007 Sep 05
2
[LLVMdev] Seeing a crash with ConstantFP::get
...39;t appear on
the Mac. Could your compiler be misoptimizing the code?
Fibonacci.exe!llvm::APFloat::APFloat(const
llvm::fltSemantics & ourSemantics={...}, unsigned __int64 value=1) Line
307 C++
Fibonacci.exe!`anonymous
namespace'::DenseMapAPFloatKeyInfo::getEmptyKey() Line 277 + 0x11 bytes
C++
Fibonacci.exe!llvm::DenseMap<`anonymous
namespace'::DenseMapAPFloatKeyInfo::KeyTy,llvm::ConstantFP
*,A0x5b1fa632::DenseMapAPFloatKeyInfo>::getEmptyKey() Line 236 + 0x9
bytes C++
Fibonacci.exe!llvm::DenseMap<`anonymous
n...
2007 Sep 05
0
[LLVMdev] Seeing a crash with ConstantFP::get
...ur compiler be misoptimizing the
code?
> Fibonacci.exe!llvm::APFloat::APFloat(const
> llvm::fltSemantics & ourSemantics={...}, unsigned __int64 value=1)
> Line 307 C++
>
> Fibonacci.exe!`anonymous
> namespace'::DenseMapAPFloatKeyInfo::getEmptyKey() Line 277 + 0x11
> bytes C++
>
> Fibonacci.exe!llvm::DenseMap<`anonymous
> namespace'::DenseMapAPFloatKeyInfo::KeyTy,llvm::ConstantFP
> *,A0x5b1fa632::DenseMapAPFloatKeyInfo>::getEmptyKey() Line 236 +
> 0x9 bytes C++
>
>...
2007 Sep 06
0
[LLVMdev] Seeing a crash with ConstantFP::get
...39;t appear on
the Mac. Could your compiler be misoptimizing the code?
Fibonacci.exe!llvm::APFloat::APFloat(const
llvm::fltSemantics & ourSemantics={...}, unsigned __int64 value=1) Line
307 C++
Fibonacci.exe!`anonymous
namespace'::DenseMapAPFloatKeyInfo::getEmptyKey() Line 277 + 0x11 bytes
C++
Fibonacci.exe!llvm::DenseMap<`anonymous
namespace'::DenseMapAPFloatKeyInfo::KeyTy,llvm::ConstantFP
*,A0x5b1fa632::DenseMapAPFloatKeyInfo>::getEmptyKey() Line 236 + 0x9
bytes C++
Fibonacci.exe!llvm::DenseMap<`anonymous
n...
2009 Apr 01
1
[LLVMdev] Patches: Range insertion for DenseSet; definition of DenseMapInfo<char>
...=============================
--- include/llvm/ADT/DenseMap.h (revision 68214)
+++ include/llvm/ADT/DenseMap.h (working copy)
@@ -51,6 +51,17 @@
static bool isPod() { return true; }
};
+// Provide DenseMapInfo for chars.
+template<> struct DenseMapInfo<char> {
+ static inline char getEmptyKey() { return ~0; }
+ static inline char getTombstoneKey() { return ~0 - 1; }
+ static unsigned getHashValue(const char& Val) { return Val * 37; }
+ static bool isPod() { return true; }
+ static bool isEqual(const char& LHS, const char& RHS) {
+ return LHS == RHS;
+ }
+};
+
// Provi...
2007 Sep 06
2
[LLVMdev] Seeing a crash with ConstantFP::get
...g the code?
>
>> Fibonacci.exe!llvm::APFloat::APFloat(const
>> llvm::fltSemantics & ourSemantics={...}, unsigned __int64
>> value=1) Line 307 C++
>>
>> Fibonacci.exe!`anonymous
>> namespace'::DenseMapAPFloatKeyInfo::getEmptyKey() Line 277 + 0x11
>> bytes C++
>>
>> Fibonacci.exe!llvm::DenseMap<`anonymous
>> namespace'::DenseMapAPFloatKeyInfo::KeyTy,llvm::ConstantFP
>> *,A0x5b1fa632::DenseMapAPFloatKeyInfo>::getEmptyKey() Line 236 +
>> 0x9 bytes...
2011 Mar 15
0
[LLVMdev] [PATCH 1/5] Prevent infinite growth of the DenseMap.
...LookupBucketFor(Key, TheBucket);
}
+ if (NumBuckets-(NumEntries+NumTombstones) < NumBuckets/8) {
+ this->grow(NumBuckets);
+ LookupBucketFor(Key, TheBucket);
+ }
// If we are writing over a tombstone, remember this.
if (!KeyInfoT::isEqual(TheBucket->first, getEmptyKey()))
--
1.7.4.1
2009 Apr 28
2
[LLVMdev] infinite looping on hashtables
...Buckets*3 ||
NumBuckets-(NumEntries+NumTombstones) < NumBuckets/8) {
this->grow(NumBuckets * 2);
LookupBucketFor(Key, TheBucket);
}
- ++NumEntries;
// If we are writing over a tombstone, remember this.
if (!KeyInfoT::isEqual(TheBucket->first, getEmptyKey()))
------------------------------------------------------
Question: How can I test this? I was able to create a nifty
Googletest unit test:
Index: llvm.test/unittests/ADT/DenseSetTest.cpp
===================================================================
--- llvm.test/unittests/ADT/DenseSe...
2008 Oct 30
6
[LLVMdev] cygwin build problems
...KeyInfoT,
ValueInfoT>::operator++() [with KeyT = uint32_t, ValueT =
llvm::Value*, KeyInfoT = llvm::DenseMapInfo<uint32_t>, ValueInfoT =
llvm::DenseMapInfo<llvm::Value*>]'
.../lib/Transforms/Scalar/GVN.cpp:757: instantiated from here
.../include/llvm/ADT/DenseMap.h:488: error: `getEmptyKey' is not a
member of `llvm::DenseMapInfo<uint32_t>'
.../include/llvm/ADT/DenseMap.h:489: error: `getTombstoneKey' is not a
member of `llvm::DenseMapInfo<uint32_t>'
.../include/llvm/ADT/DenseMap.h:491: error: `isEqual' is not a member
of `llvm::DenseMapInfo<uint32_t...
2013 Nov 04
0
[LLVMdev] compile error when using overloaded = operator of DenseMap
On Mon, Nov 4, 2013 at 10:35 AM, Rekha R <rekharamapai at nitc.ac.in> wrote:
> Hi,
>
> I am trying to implement Available Expressions data flow analysis. I created
> the following class (I am giving here code snippet.):
>
> namespace {
> typedef DenseMap<Expression, uint32_t> DMTy; //Expression is a class I
> defined.
> struct DataFlowValue {
>
2013 Nov 04
2
[LLVMdev] compile error when using overloaded = operator of DenseMap
Hi,
I am trying to implement Available Expressions data flow analysis. I
created the following class (I am giving here code snippet.):
namespace {
typedef DenseMap<Expression, uint32_t> DMTy; //Expression is a class I
defined.
struct DataFlowValue {
DMTy ExprMap;
llvm::BitVector* DFV;
// Functions operating on the data //
bool operator==(const DataFlowValue V) const;
2011 Mar 15
10
[LLVMdev] Prevent unbounded memory consuption of long lived JIT processes
This series of patches address several issues causing memory usage to grow
indefinetely on a long lived process.
These are not convenional leaks -- memory would have been freed when the LLVM
context or/and JIT engine is destroyed -- but for as long as they aren't the
memory is usage effectively ubounded.
The issues were found using valgrind with '--show-reachable=yes' option:
1.
2007 Dec 11
0
[LLVMdev] Exception handling in JIT
...> + unsigned MinSize = LSize < RSize ? LSize : RSize;
> +
> + for (unsigned i = 0; i != MinSize; ++i)
> + if (LIds[i] != RIds[i])
> + return LIds[i] < RIds[i];
> +
> + return LSize < RSize;
> +}
> +
> +struct KeyInfo {
> + static inline unsigned getEmptyKey() { return -1U; }
> + static inline unsigned getTombstoneKey() { return -2U; }
> + static unsigned getHashValue(const unsigned &Key) { return Key; }
> + static bool isEqual(unsigned LHS, unsigned RHS) { return LHS ==
> RHS; }
> + static bool isPod() { return true; }
> +}...
2007 Dec 12
3
[LLVMdev] Exception handling in JIT
...ize ? LSize : RSize;
>> +
>> + for (unsigned i = 0; i != MinSize; ++i)
>> + if (LIds[i] != RIds[i])
>> + return LIds[i] < RIds[i];
>> +
>> + return LSize < RSize;
>> +}
>> +
>> +struct KeyInfo {
>> + static inline unsigned getEmptyKey() { return -1U; }
>> + static inline unsigned getTombstoneKey() { return -2U; }
>> + static unsigned getHashValue(const unsigned &Key) { return Key; }
>> + static bool isEqual(unsigned LHS, unsigned RHS) { return LHS ==
>> RHS; }
>> + static bool isPod() { re...
2007 Dec 10
2
[LLVMdev] Exception handling in JIT
Hi everyone,
Here's a patch that enables exception handling when jitting. I've
copy/pasted _many_code from lib/Codegen/DwarfWriter.cpp, so we may need
to factorize it, but the functionality is there and I'm very happy with
it :)
lli should now be able to execute the output from llvm-gcc when using
exceptions (the UnwindInst instruction is not involved in this patch).
Just add the
2008 Feb 04
0
[LLVMdev] Exception handling in JIT
...> + unsigned MinSize = LSize < RSize ? LSize : RSize;
> +
> + for (unsigned i = 0; i != MinSize; ++i)
> + if (LIds[i] != RIds[i])
> + return LIds[i] < RIds[i];
> +
> + return LSize < RSize;
> +}
> +
> +struct KeyInfo {
> + static inline unsigned getEmptyKey() { return -1U; }
> + static inline unsigned getTombstoneKey() { return -2U; }
> + static unsigned getHashValue(const unsigned &Key) { return Key; }
> + static bool isEqual(unsigned LHS, unsigned RHS) { return LHS ==
> RHS; }
> + static bool isPod() { return true; }
> +}...
2008 Feb 01
2
[LLVMdev] Exception handling in JIT
Dear all,
Here's a new patch with Evan's comments (thx Evan!) and some cleanups.
Now the (duplicated) exception handling code is in a new file:
lib/ExecutionEngine/JIT/JITDwarfEmitter.
This patch should work on linux/x86 and linux/ppc (tested).
Nicolas
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: jit-exceptions.patch
URL: