Displaying 20 results from an estimated 1000 matches similar to: "[LLVMdev] Why doesn't GlobalVariable::copyAttributesFrom copy the thread local mode?"
2014 Feb 08
3
[LLVMdev] X86WrapperRIP in non-small code model
Currently it appears X86WrapperRIP is only implemented in the small code
model, which causes code to fail to select in other code models. My
particular use case is MCJIT, where the default code model is large
(the X86WrapperRIP comes from a TLS variable reference). What would be the
best way to implement this? I'd be happy to take a crack at it myself, but
I really don't know my way around
2014 Feb 07
2
[LLVMdev] Weird msan problem
Yes, it would be great to get that fixed.
On Wed, Feb 5, 2014 at 4:09 PM, Evgeniy Stepanov
<eugeni.stepanov at gmail.com>wrote:
> On Thu, Feb 6, 2014 at 12:21 AM, Keno Fischer
> <kfischer at college.harvard.edu> wrote:
> > Looks like when you materialize the stores, you should check the size of
> the
> > the store and emit an appropriate amount of stores to the
2014 Aug 13
2
[LLVMdev] Advice for setting debug locations
Oh, I see. Sorry I misunderstood. I'll try to come up with some
minimal IR. The assertion stems from the fact that getCompileUnitDIE()
returns null and then crashes at DWARFUnit.cpp:301. I admit I don't
know if this problem is on the parsing or the generation side.
While I come up with the IR, basically what I was doing was using a
DebugLoc with scope being a DIFile rather than a
2014 Feb 05
2
[LLVMdev] Weird msan problem
Looks like when you materialize the stores, you should check the size of
the the store and emit an appropriate amount of stores to the origin shadow
(or just a memset intrinsic?).
On Wed, Feb 5, 2014 at 2:13 PM, Keno Fischer
<kfischer at college.harvard.edu>wrote:
> The @entry stuff is just a gdb artifact. I've been tracking this back a
> little further, and it seems there's
2014 Feb 02
2
[LLVMdev] Weird msan problem
How is ccall() implemented? If it manually sets up a stack frame, then
it also needs to store argument shadow values in paramtls.
I don't think there is an overflow, unless you have a _lot_ of
arguments in a function call.
On Sun, Feb 2, 2014 at 9:26 AM, Keno Fischer
<kfischer at college.harvard.edu> wrote:
> Also, I was looking at the instrumented LLVM code and I noticed that the
2014 Feb 03
2
[LLVMdev] Weird msan problem
The code for ccall looks right. Sounds like you have a very small
range of instructions where an uninitialized value appear. You could
try debugging at asm level. Shadow for b should be passed at offset 0
in __msan_param_tls.
MSan could propagate shadow through arithmetic and even some logic
operations (like select). It could be that b is clean on function
entry, but then something uninitialized
2013 Nov 21
2
[LLVMdev] Building LLVM with asan
Indeed, removing that flag works fine, the only question is why this is
added in tools/llvm-shlib/Makefile in the first place then and what to do
about it:
ifeq ($(HOST_OS), $(filter $(HOST_OS), Linux GNU GNU/kFreeBSD))
# Don't allow unresolved symbols.
LLVMLibsOptions += -Wl,--no-undefined
endif
On Thu, Nov 21, 2013 at 11:53 AM, Alexander Potapenko <glider at
2014 Feb 01
2
[LLVMdev] Weird msan problem
I have verified that both TLS implementations indeed find the same area of
memory. Anything else I could look for?
On Tue, Jan 28, 2014 at 4:28 PM, Keno Fischer
<kfischer at college.harvard.edu>wrote:
> Yes, both JIT code and the native runtime are instrumented. I am under the
> impressions that the the C library should guarantee that from the way the
> relocations are
2014 Aug 07
3
[LLVMdev] Signed NaNs in APFloat arithmetic
Ok, I had forgotten about sNaNs. Doesn't the same caveat apply to
0-sNaN then though or does that not signal? Does that mean we need a
separate way to handle negate in the IR? Funnily enough, historically
I believe we were using the multiplication by -1.0 because it was a
more reliable negation that 0-x (from 3.0 until 3.3 at least). Is
there a good reason why multiplication by NaN should kill
2014 Aug 13
2
[LLVMdev] Advice for setting debug locations
Sorry, I didn't have a small IR example and I was sure I was just
doing something stupid. Thanks for the help, I'll try it out and
report back. Maybe it would be good to add an assertion or something
that tells people what's wrong in this case, since the generated DWARF
seems to be invalid?
On Wed, Aug 13, 2014 at 5:53 PM, David Blaikie <dblaikie at gmail.com> wrote:
> Use
2013 Nov 21
2
[LLVMdev] Building LLVM with asan
Hello everybody,
after moving from OS X to Linux build llvm with asan enabled (I also
updated to trunk, but not sure if that's related). However, it's totally
possible that I missed a step that I took back when I set this up for me,
so I might be doing something very stupid. Anyway, I'm configuring LLVM with
../configure --prefix=/home/kfischer/julia/usr --build=x86_64-pc-linux-gnu
2013 Nov 21
0
[LLVMdev] Building LLVM with asan
Actually it only link the shlib fine. Linking any executable against it
fails:
llvm[2]: Linking Release+Asserts executable llvm-lto (without symbols)
/home/kfischer/julia/deps/llvm-svn/build_Release+Asserts/Release+Asserts/bin/clang++
-fsanitize=address -O3 -Wl,-R -Wl,'$ORIGIN/../lib'
-L/home/kfischer/julia/deps/llvm-svn/build_Release+Asserts+Sanitize/Release+Asserts/lib
2014 Aug 07
2
[LLVMdev] Signed NaNs in APFloat arithmetic
Ok. That you for clarifying the point for me. I was primed for a
regression because this behavior changed over llvm versions and was
causing my tests to fail ;). I'm now doing bitcasting to int, xoring
with the signbit and bitcasting back.
On Thu, Aug 7, 2014 at 2:59 AM, Owen Anderson <resistor at mac.com> wrote:
> Subtraction is also not a correct implementation of negation, for
2014 Jun 10
4
[LLVMdev] MachO non-external X86_64_RELOC_UNSIGNED
Thank you for the explanation. Does that mean r_symbolnum is basically
redundant in that case? Also, let me ask you how to handle the following
use case which is somewhat related. Currently in MCJIT for MachO we are
relocating all the debug sections. Eventually (as ELF does), it would be
good to avoid this. However, this means that the debugger would have to
handle relocations (as lldb currently
2015 May 23
2
[LLVMdev] Sporadic "RealOffset <= INT32_MAX && RealOffset >= INT32_MIN" failures with MCJIT on Windows
Hi Dale,
I don't think that Keno's rewrite is applicable for a bug fix release. We
have, in the last year, moved to having some dot releases for our older
releases, but these are definitely bug fix only and low risk as we don't
want to break anything new.
The release documentation is located here:
http://llvm.org/docs/HowToReleaseLLVM.html
for future reference. There's no
2015 Apr 10
2
[LLVMdev] Intercepting dlinfo in memory sanitizer
Thanks! I'll try that.
In order to avoid starting a new thread, let me ask you the next question.
One of the shared libraries I load calls strtol and msan fails to intercept
it. Why would this be? The library seems to be otherwise implemented. One
of the potential culprits I saw is that strtol is marked as strong in libc.
Is there any workaround?
Keno
On Thu, Apr 9, 2015 at 3:00 PM, Evgeniy
2015 May 22
2
[LLVMdev] Sporadic "RealOffset <= INT32_MAX && RealOffset >= INT32_MIN" failures with MCJIT on Windows
On Fri, May 22, 2015 at 4:14 PM, Keno Fischer <kfischer at college.harvard.edu>
wrote:
> This might be related to GOT relocations. I rewrote that part of
> RuntimeDyldELFbecause I was seeing this issue. Have you tried trunk?
>
I didn't notice that you were running 3.5 the first time I read this.
Keno's diagnosis is very likely to be correct. You should try trunk if
2013 Nov 21
2
[LLVMdev] Building LLVM with asan
What I meant to say was that it worked for me on OS X on a slightly older
version of LLVM. Anyway, here's the ld line:
"/usr/bin/ld" -export-dynamic -z relro --hash-style=gnu --build-id
--eh-frame-hdr -m elf_x86_64 -shared -o
/home/kfischer/julia/deps/llvm-svn/build_Release+Asserts+Sanitize/Release+Asserts/lib/
2013 Nov 21
0
[LLVMdev] Building LLVM with asan
On Thu, Nov 21, 2013 at 6:18 AM, Keno Fischer <kfischer at csail.mit.edu> wrote:
> Hello everybody,
>
> after moving from OS X to Linux build llvm with asan enabled
Sorry, I failed to parse this. You're compiling Clang on Linux, and
OSX is unrelated, right?
> (I also updated
> to trunk, but not sure if that's related). However, it's totally possible
> that I
2014 Jan 28
2
[LLVMdev] Weird msan problem
I assume there are transitions between JITted code and native helper
functions. How are you handling them? Are native functions
MSan-instrumented?
MSan is passing shadow across function calls in TLS slots. Does your
TLS implementation guarantee that accesses to __msan_param_tls from
JITted and from native code map to the same memory?
On Mon, Jan 27, 2014 at 11:36 PM, Evgeniy Stepanov