Displaying 20 results from an estimated 2000 matches similar to: "LLD support for mach-o aliases (weak or otherwise)"
2017 Jun 14
1
LLD support for mach-o aliases (weak or otherwise)
> On Jun 6, 2017, at 4:08 PM, Michael Clark via llvm-dev <llvm-dev at lists.llvm.org> wrote:
>
> Hi Folks,
>
> I’m working on a port of musl libc to macos (arch triple is “x86_64-xnu-musl”) to solve some irreconcilable issues I’m having with libSystem.dylib. I don’t want to use glibc for various reasons, mainly because I want to static link. I have static PIE + ASLR working
2017 Jun 14
4
LLD support for mach-o aliases (weak or otherwise)
> On Jun 14, 2017, at 2:47 PM, Michael Clark via llvm-dev <llvm-dev at lists.llvm.org> wrote:
>
>>
>> On 15 Jun 2017, at 6:50 AM, Louis Gerbarg <lgerbarg at apple.com <mailto:lgerbarg at apple.com>> wrote:
>>
>>>
>>> On Jun 6, 2017, at 4:08 PM, Michael Clark via llvm-dev <llvm-dev at lists.llvm.org <mailto:llvm-dev at
2017 Jun 06
4
LLD support for ld64 mach-o linker synthesised symbols
Hi Folks,
I have a question regarding LLD support for ld64 mach-o linker synthesised symbols. I did a quick search of the LLD source and I can not find support for them so before I start trying to use lld I thought I would ask.
I have found a couple of cases where they are essential. i.e. where there is no other way to get the required information, such as getting the address of the mach-o
2017 Jun 07
3
LLD support for ld64 mach-o linker synthesised symbols
On Tue, Jun 6, 2017 at 11:14 PM, Michael Clark via llvm-dev <
llvm-dev at lists.llvm.org> wrote:
> OK. I see that the Mach-O linker is not even built when LLD is enabled in
> Release_40, only the PE/COFF and ELF linkers are built.
>
> From looking at reviews it appears that Clang was able to be linked with
> LLD on Darwin about 2 years ago, so Mach-O support seems to have
2017 Jun 06
2
LLD support for ld64 mach-o linker synthesised symbols
Hi Rui,
The motivation would be primarily that LLVM/Clang/LLD are community projects such that if I or someone in the community added support for e.g. symbol aliases, then it could be reviewed and potentially merged. ld64 on the other hand does not have a community process for patch submission and code review that I am aware of so its unlikely that if someone from the community came up with a
2013 Jan 09
4
[LLVMdev] [lld] ELF weak aliases
So I just got lua to link and run and work on x86-64 Linux with musl
and lld. It did require one change to hack around incorrect handling
of ELF weak aliases.
In musl __stdio_exit.c
<http://git.musl-libc.org/cgit/musl/tree/src/stdio/__stdio_exit.c> we
have:
static FILE *const dummy_file = 0;
weak_alias(dummy_file, __stdin_used);
weak_alias(dummy_file, __stdout_used);
weak_alias(dummy_file,
2013 Jan 09
0
[LLVMdev] [lld] ELF weak aliases
How are you modeling weak aliases in Atoms?
mach-o does not support weak aliases. My mental model of a weak alias is:
If foo is a weak alias for bar, then if nothing else defines bar, use foo in place of bar.
-Nick
On Jan 8, 2013, at 4:50 PM, Michael Spencer wrote:
> So I just got lua to link and run and work on x86-64 Linux with musl
> and lld. It did require one change to hack
2020 May 26
2
Emitting aligned nlist_64 structures for Mach-O in MC
I looked into this further. ld64 has a macho_nlist abstraction over the various underlying nlist structures [1]. On x86-64, the P::getP referenced in n_value will resolve to [2], which in turn goes to [3], which calls OSReadLittleInt64. On a little endian machine, OSReadLittleEndian just calls _OSReadInt64 [4], which in turn does a pointer arithmetic and cast and then dereferences the pointer [5].
2017 Apr 20
4
[cfe-dev] FE_INEXACT being set for an exact conversion from float to unsigned long long
> This seems like it was done for perf reason (mispredict). Conditional-to-cmov transformation should keep
> from introducing additional observable side-effects, and it's clear that whatever did this did not account
> for floating point exception.
That’s a very reasonable statement, but I’m not sure it corresponds to the way we have typically approached this sort of problem.
In
2013 Jan 09
0
[LLVMdev] [lld] ELF weak aliases
Hi Michael,
Does ELF support aliasing ?
How is the relationship captured in ELF symbol table, that one symbol is a
alias of another symbol ?
> Note that __stdout_used is the last symbol in the .rodata section.
> This means that the reader assigns the data (16 bytes of 0) to
> __stdout_used. Because dummy_file and the other __stdx_used symbols
> come before it, they end up in the
2017 Apr 19
3
[cfe-dev] FE_INEXACT being set for an exact conversion from float to unsigned long long
Changing the list from cfe-dev to llvm-dev
> On 20 Apr 2017, at 4:52 AM, Michael Clark <michaeljclark at mac.com> wrote:
>
> I’m getting close. I think it may be an issue with an individual intrinsic. I’m looking for the X86 lowering of Instruction::FPToUI.
>
> I found a comment around the rationale for using a conditional move versus a branch. I believe the predicate logic
2017 Apr 21
2
[cfe-dev] FE_INEXACT being set for an exact conversion from float to unsigned long long
I think it’s generally true that whenever branches can reliably be predicted branching is faster than a cmov that involves speculative execution, and I would guess that your assessment regarding looping on input values is probably correct.
I believe the code that actually creates most of the transformation you’re interested in here is in SelectionDAGLegalize::ExpandNode() in LegalizeDAG.cpp. The
2020 May 26
2
Emitting aligned nlist_64 structures for Mach-O in MC
As part of our work on LLD for Mach-O, we’ve observed that the object files produced by LLVM don’t always have aligned nlist_64 entries. For context, nlist_64 is the 64-bit symbol table entry structure for Mach-O, and the symbol table is an array of nlist_64 entries. nlist_64 has an 8 byte member, so it should be 8-byte aligned, but we’ve seen object files where the symbol table only has a 4-byte
2016 Dec 09
4
Strange clang behavior when compiled against musl
I have managed to compile llvm and clang against musl, but it behaves really strange:
At first I tried to launch the compiler with musl dynamic loader:
$ LD_LIBRARY_PATH=/path/to/musl/lib /path/to/musl/lib/ld-musl-x86_64.so.1 /path/to/llvm/bin/clang -v
clang version 4.0.0 (https://github.com/llvm-mirror/clang 40adebeca0f99006d407508653c2cbd270a1a51c) (https://github.com/llvm-mirror/llvm
2018 Apr 02
2
LLD-linked binary segfaults at runtime on alpine linux
Alpine linux is a distribution that uses musl libc instead glibc. Here are
my steps to reproduce:
On Alpine linux, download LLVM, Clang, LLD 6.0.0 from releases.llvm.org,
and build them from source.
$ clang -c hello_world.c
$ ld.lld --gc-sections -m elf_x86_64 -o hello_world
/usr/lib/gcc/x86_64-alpine-linux-musl/6.4.0/../../../../lib/Scrt1.o
2018 Apr 02
0
LLD-linked binary segfaults at runtime on alpine linux
Can you add `--reproduce=repro` to lld command line? That generates
repro.tar in your current directory which contains all input files. And
then please compress and upload it somewhere so that we can take a look.
On Mon, Apr 2, 2018 at 9:18 AM Andrew Kelley via llvm-dev <
llvm-dev at lists.llvm.org> wrote:
> Alpine linux is a distribution that uses musl libc instead glibc. Here are
2018 Apr 02
1
LLD-linked binary segfaults at runtime on alpine linux
https://superjoe.s3.amazonaws.com/temp/repro.tar.xz
On Mon, Apr 2, 2018 at 1:26 PM, Rui Ueyama <ruiu at google.com> wrote:
> Can you add `--reproduce=repro` to lld command line? That generates
> repro.tar in your current directory which contains all input files. And
> then please compress and upload it somewhere so that we can take a look.
>
>
> On Mon, Apr 2, 2018 at
2019 Mar 25
3
Trying to create a pure LLVM toolchain on musl based distribution
Hello,
I'm trying to create a pure LLVM toolchain (that will not depend on GNU
and produce GNU-free code too) on a musl based distribution.
For now, I use gcc to bootstrap and build all LLVM components. I do it
individually because I was running out of space and memory trying to
build all using LLVM_ENABLE_PROJECTS. Also, I don't want to create a
all-in-one package. Then, once
2017 Aug 05
3
Cross compiling C++ program
On Fri, Aug 04, 2017 at 04:40:44PM -0600, Jonathan Roelofs wrote:
> Might be a helpful exercise for you to try building vanilla clang with
> runtimes for the host, before worrying about how to build everything for
> your baremetal case:
> http://llvm.org/docs/GettingStarted.html#getting-started-quickly-a-summary
So I did. :o) It was fun realizing how much Release type reduces LD
2016 Feb 04
3
Fwd: [musl] strptime() question
There is incompatibility between R strptime and musl libc. I posted
about it on their mailing list, but they need more information I can't
provide, so I'm forwarding the message here in hope R developers can
help. Thanks.
---------- Forwarded message ----------
From: Rich Felker <dalias at libc.org>
Date: Thu, Feb 4, 2016 at 2:07 PM
Subject: Re: [musl] strptime() question
To: Alba