Displaying 20 results from an estimated 9000 matches similar to: "How to debug a missing symbol with ThinLTO?"
2020 Jul 22
2
How to debug a missing symbol with ThinLTO?
David,
Thanks for looking into this. I did a small reproduction on my machine
outside of my build system. So here is how to reproduce:
Download https://downloads.xiph.org/releases/ogg/libogg-1.3.4.tar.xz
Download llvm-10.0.1 macOS binary
export PATH=<path to llvm/bin>:$PATH
export SDKROOT=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk
untar
2020 Jul 22
2
How to debug a missing symbol with ThinLTO?
This is usually a problem that is not using llvm-ar. I cannot reproduce this problem with either llvm 10.0 or TOT version. Which linker version are you using? You can also try pass "-Wl,-debug_snapshot" to the command where the error produces and then locate the "*.ld-snapshot" in /tmp directory and attach that as a reproducer.
Steven
> On Jul 22, 2020, at 8:41 AM, Teresa
2020 Jul 22
2
How to debug a missing symbol with ThinLTO?
Looks like your static library is not even pulled into the link command so the static library is not even in the snapshot. From the link command in the snapshot, the static library is not on the command line from snapshot:
/Applications/Xcode-11.3.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld -Z -demangle -object_path_lto
2020 Jul 23
2
How to debug a missing symbol with ThinLTO?
Hi Tobias
The problem is that your static archive has a SYMDEF that is empty, so linker thinks the static library provided doesn't contain any symbol. The reason for that is you are using the `ranlib` from Xcode, which is too old to understand the new bitcode object files produced by llvm 10.
There are lots of ways to fix that:
* The standard way to create static library on macOS is to use
2005 Dec 08
1
A few questions how to use libogg
1.) after initializing a ogg_stream_state may I just keep calling
ogg_stream_packetin with valid ogg_packet's until no more ogg_packets
needs to be added? Or do I need to call ogg_stream_pageout after every
ogg_stream_packetin? Iaw may I delay calling ogg_stream_pageout until
there are no more packets to be added?
2.) I assume I have call ogg_stream_pageout until no more pages can be
2009 Jun 18
1
ogg_stream_reset() question
Hi Ogg experts!
My current work is catenating packets from several ogg files to the
one long stream, so I'd like to create stream once, and then reset it
just before reading codec headers from every new file. However, after
calling
ogg_stream_reset_serialno(ogg_stream_state *os, int serialno),
bos page is not pushed in stream since it calls
ogg_stream_reset(ogg_stream_state *os),
which
2005 Oct 05
1
Simple encodig sample...
Hi all.
I'm Mat & I'm new :)
I'm testing libtheora + libogg perhaps for a commercial product.
I started watching encoder_example.c ... I simplified it for testing
it easier.
It seems ok to me but I have no experience with theora so I would like
to know if my code is correct.
I tried to debug it with Valgrind and I found 4 possible memory leaks...
but I think they can be
2004 Aug 06
1
ultra-preliminary C++ wrapper for ogg & vorbis
Hi.
I'm working on a very simple C++ wrapper for parts of libogg and
libvorbis; I thought I would expose it for initial comments and the
generally curious.
No conveniences, no frills. No helpful higher-level abstractions. Just
a translation from ogg_method_foo(ogg_method* data) to classes that hold
the ogg_stream_state etc., so you may type mypage.bos() instead of
2007 Oct 19
2
Debug the encoder_example
hi all,
i am trying to debug the encoder_example with gdb.
after the line number 669, it will go to a place "ogg_stream_init
(os=0xbff0ec84, serialno=1418647043) at framing.c:189"
but i couldn't find the file "framing.c" with in the "ibtheora-1.0alpha7"
directory.
please anyone can tell me where is this file
--
-----------
Regards,
Janaka Priyadarshana
2020 Jul 12
2
Emit LLVM bitcode after ThinLTO
Hi,
I wanted to get the linked result in LLVM bitcode format.
With LTO, this can be done by -flto -Wl,-plugin-opt,emit-llvm. Instead of
generating native executables, it outputs a file with bitcode format.
Does this still work with -flto=thin? -flto=thin -Wl,-plugin-opt,emit-llvm
outputs a bitcode file, but its file size is too small, and does not
contain all contents.
What is the correct way
2019 Jun 17
2
Running distributed thinLTO without thin archives.
I'm trying to run distributed ThinLTO without thin archives.
When I do, I get an error in the optimizer when clang tries to open a
nonexistent file:
clang++ -flto=thin -Xclang -fno-lto-unit -O3 -c main.cpp -o main.o
clang++ -flto=thin -Xclang -fno-lto-unit -O3 -c lib/lib.cpp -o lib/lib.o
clang++ -flto=thin -Xclang -fno-lto-unit -O3 -c src/lib.cpp -o src/lib.o
llvm-ar -format gnu qcs lib.a
2017 May 16
2
ThinLTO with Linux+ELF+Gold -- incorrectly dropping weak definitions.
This looks similar to the problem I fixed awhile back in r292408. I'll take
a look (probably tomorrow since I am taking some vacation today).
Teresa
On Tue, May 16, 2017 at 9:43 AM, David Blaikie <dblaikie at gmail.com> wrote:
> +Teresa
>
> On Mon, May 15, 2017 at 9:20 AM David Callahan via llvm-dev <
> llvm-dev at lists.llvm.org> wrote:
>
>> I am tracking a
2019 Jan 08
2
distributed thinlto usage
I am trying to work through the usage of thinlto for distributed builds.
Here is the simple thinlto usage, just add -flto=thin everywhere, easy:
clang++ -flto=thin -O3 -c -o CreateWay_.o -DSPEC_CPU -DNDEBUG -DSPEC_CPU_LITTLE_ENDIAN -Wno-dangling-else CreateWay_.cpp
clang++ -flto=thin -O3 -c -o Places_.o -DSPEC_CPU -DNDEBUG -DSPEC_CPU_LITTLE_ENDIAN
2008 Apr 29
2
More trival questions
Hopefullly this is once again something trivial I'm missing. I'm still trying to figure out how to pull a part a stream. I get two out the three theora headers I can see in the file (http://v2v.cc/~j/theora_testsuite/320x240.ogg) if I use the buffer in the page struct and nothing usable if I try to use the packet structs. Hopefully this is once again something something trivial I've
2007 Jan 11
2
Vectored I/O for libogg
Folks, the packets I want to place in an ogg stream are concatenations
of two hunks of memory. Rather than memcopy() them into one then pass
them to libogg, I patched framing.c to accept iovecs.
The unified diff is 80 lines, minus the OS-specific stuff for defining
struct ogg_iovec_t - pretty trivial.
Is there any interest in it? Or is libogg frozen while all efforts are
concentrated on
2019 Jan 09
2
distributed thinlto usage
Thanks Teresa
Yes it is astar, happen to send a tar of the sources but they are just copies from the spec distribution
The ld command is:
GNU ld (GNU Binutils) 2.29.1
Thanks for the guidance on path names. The prefix-replace just effects the string written to the object files right? So we could post-process that file with other tools as well, correct?
Thanks again
--david
From: Teresa Johnson
2019 Jun 18
2
Running distributed thinLTO without thin archives.
Thanks!
Question about the final link step:
Do I provide all the object files to the link step, i.e. something like:
clang++ -o thinlto main-native.o lib/lib-native.o src/lib-native.o
Do I need to provide --start-lib markers on that final link step as well?
Tanoy
On Tue, Jun 18, 2019 at 10:37 AM Teresa Johnson <tejohnson at google.com>
wrote:
> Hi Tanoy,
>
> You can't use
2018 May 09
2
lld + ThinLTO + fprofile-generate causes duplicate symbol errors
The duplicate symbol errors are for __llvm_profile_filename and
__llvm_profile_raw_version.
IIUC, these are supposed to be weak symbols but Thin LTO seems to break
this in some way. This does't happen with gold or no LTO or full LTO.
$ cat > a.c
extern int foo();
int main() {
return foo();
}
$ cat > b.c
int foo() {
return 0;
}
$ clang a.c -fprofile-generate -flto=thin -c
$ clang
2019 Jan 09
2
distributed thinlto usage
Fails with gold too:
Library-native.o:Library.cpp:regway: error: undefined reference to 'vtable for regwayobj'
/home/dcallahan/fbsource/fbcode/third-party-buck/platform007/tools/binutils/bin/gold/ld: the vtable symbol may be undefined because the class is missing its key function
clang-8: error: linker command failed with exit code 1 (use -v to see invocation)
From: Teresa Johnson
2008 Mar 28
2
speex - cross compil for ARM - problem ogg headers
Hi all,
I try to compile speex for ARM. I follow the README.arm and i always have the same errors :
make[2]: entrant dans le r?pertoire ? /usr/src/linphone/arm/speex-1.1.6/src ?
source='speexenc.c' object='speexenc.o' libtool=no \
depfile='.deps/speexenc.Po' tmpdepfile='.deps/speexenc.TPo' \
depmode=gcc3 /bin/sh ../depcomp \