View previous topic :: View next topic |
Author |
Message |
wrc1944 Advocate
Joined: 15 Aug 2002 Posts: 3435 Location: Gainesville, Florida
|
Posted: Sun Aug 19, 2012 5:46 pm Post subject: New gcc LTO support kernel patches post on LWN |
|
|
I haven't tried enabling LTO for quite a while, but just ran across this new post on LWN. Does this possibly mean that LTO optimization is getting closer to being usable?
Any feedback (pro or con) on what all this means? I have a rarely used (but kept up-to-date) Gentoo "testing" partition on a spare hard drive, and might be tempted to give LTO another try if I can find some spare time.
http://lwn.net/Articles/512335/ _________________ Main box- AsRock x370 Gaming K4
Ryzen 7 3700x, 3.6GHz, 16GB GSkill Flare DDR4 3200mhz
Samsung SATA 1000GB, Radeon HD R7 350 2GB DDR5
OpenRC Gentoo ~amd64 plasma, glibc-2.36-r7, gcc-13.2.1_p20230304
kernel-6.8.4 USE=experimental python3_11 |
|
Back to top |
|
|
Veldrin Veteran
Joined: 27 Jul 2004 Posts: 1945 Location: Zurich, Switzerland
|
Posted: Sun Aug 19, 2012 6:20 pm Post subject: |
|
|
From just reading the article, and not being an expert on the subject:
It seems, that with LTO a faster (as in smaller) but probably buggier kernel is possible.
another downside is that it need loads of RAM to build.
In parallel I am wondering if the improvements are noticeable, especially on low(er) specs machines.
just my initial thoughts on the subject.
V. _________________ read the portage output!
If my answer is too concise, ask for an explanation. |
|
Back to top |
|
|
wrc1944 Advocate
Joined: 15 Aug 2002 Posts: 3435 Location: Gainesville, Florida
|
Posted: Sun Aug 19, 2012 6:53 pm Post subject: |
|
|
Veldrin,
Yeah, I'm wondering too.
I found a reference on phoronix,
http://www.phoronix.com/scan.php?page=news_item&px=MTE2MzY
which had a link to the mailing list back and forth of the devs working on this:
https://lkml.org/lkml/2012/8/18/273
Reading some of their comments quickly convinced me that I knew even less about this stuff than I thought I did, which I realized was not very much in the first place.
Obviously, my lack of expertise would not allow me to be of any help. Guess I'll have to wait until gcc-4.8 makes it into Gentoo ~Arch, and try enabling LTO then. One would think that the gcc dev's goal is to eventually enable LTO as the default, since they keep mentioning it in each release version's documentation.
On the other hand, maybe the assumption that LTO is even desirable as a linux/gcc default is incorrect, and just an uninformed misconception I've built up in my own mind... _________________ Main box- AsRock x370 Gaming K4
Ryzen 7 3700x, 3.6GHz, 16GB GSkill Flare DDR4 3200mhz
Samsung SATA 1000GB, Radeon HD R7 350 2GB DDR5
OpenRC Gentoo ~amd64 plasma, glibc-2.36-r7, gcc-13.2.1_p20230304
kernel-6.8.4 USE=experimental python3_11 |
|
Back to top |
|
|
ssam n00b
Joined: 24 Nov 2005 Posts: 13
|
Posted: Mon Aug 20, 2012 12:51 pm Post subject: |
|
|
The are several optimisation that can only be performed in the compiler can see all the functions involved. if you do:
Code: |
int a = 1;
if (a != 1){ do something }
|
then the compiler can remove the if statement, as it obviously does not run.
if the code is like:
Code: |
void foo(int a){
if (a != 1){ do something }
}
int a = 1;
foo(a);
|
then it is a bit trickier for the compiler, but optimisation is still possible. the whole function call can be removed.
but if the function definition and call are in separate files, then the compiler has no chance to spot the optimisation. LTO solves that because the compiler can see everything at once.
if you have a look at the "Interprocedural optimization improvements" section in http://gcc.gnu.org/gcc-4.7/changes.html it has some more examples.
of course more aggressive optimisation can expose bugs in code (eg undefined behaviour) or bugs in the compiler. so it may be a while before this is usable. |
|
Back to top |
|
|
xming Guru
Joined: 02 Jul 2002 Posts: 441
|
Posted: Mon Aug 20, 2012 6:43 pm Post subject: |
|
|
I am running a kernel with BFS and LTO build, so far so good. _________________ http://wojia.be |
|
Back to top |
|
|
wrc1944 Advocate
Joined: 15 Aug 2002 Posts: 3435 Location: Gainesville, Florida
|
Posted: Mon Aug 20, 2012 9:48 pm Post subject: |
|
|
@ssam,
Thanks for the reply- I had looked at this before, but I think your comments have helped me begin to understand it a little more clearly.
@xming,
Could you post a few more details, please? Do you mean you only compiled your kernel with LTO enabled (and are using the kolivas BFS scheduler), or are you also having decent success with doing a complete emerge -e @system and/or @world?
Or, if you're only using an LTO compiled kernel, is there any noticable performance improvement in other non-LTO compile applications at runtime?
Does running an LTO enabled kernel simply reduce the compile time for other packages, and doesn't really impact the general performance of the resulting individual binary packages? _________________ Main box- AsRock x370 Gaming K4
Ryzen 7 3700x, 3.6GHz, 16GB GSkill Flare DDR4 3200mhz
Samsung SATA 1000GB, Radeon HD R7 350 2GB DDR5
OpenRC Gentoo ~amd64 plasma, glibc-2.36-r7, gcc-13.2.1_p20230304
kernel-6.8.4 USE=experimental python3_11 |
|
Back to top |
|
|
xming Guru
Joined: 02 Jul 2002 Posts: 441
|
Posted: Mon Aug 20, 2012 9:58 pm Post subject: |
|
|
I am running 3.5.2 with LTO and bfs + some other patches. As for packages I don't have lto enabled for all, just some. I can't say if it's faster as I haven't run any benchmarks. All I can say it's rather stable (no issues so far) and it feels a bit smoother. _________________ http://wojia.be |
|
Back to top |
|
|
wrc1944 Advocate
Joined: 15 Aug 2002 Posts: 3435 Location: Gainesville, Florida
|
Posted: Mon Aug 20, 2012 10:50 pm Post subject: |
|
|
Thanks xming,
Just to clarify, you're enabling LTO for individual packages in /etc/portage/env/, correct?
IIRC, a while back there was a forum thread that started listing packages that could be compiled with LTO enabled, but I've lost track of it.
Anyone think trying an emerge -e @system is worth a shot (with kernel 3.5.2 and gcc-4.7.1) and seeing what fails, considering there might have been some progress in the last year or two since I last attempted this? _________________ Main box- AsRock x370 Gaming K4
Ryzen 7 3700x, 3.6GHz, 16GB GSkill Flare DDR4 3200mhz
Samsung SATA 1000GB, Radeon HD R7 350 2GB DDR5
OpenRC Gentoo ~amd64 plasma, glibc-2.36-r7, gcc-13.2.1_p20230304
kernel-6.8.4 USE=experimental python3_11 |
|
Back to top |
|
|
VoVaN l33t
Joined: 02 Jul 2003 Posts: 688 Location: The Netherlands
|
Posted: Tue Aug 21, 2012 6:53 am Post subject: |
|
|
wrc1944 wrote: | Thanks xming,
Just to clarify, you're enabling LTO for individual packages in /etc/portage/env/, correct?
IIRC, a while back there was a forum thread that started listing packages that could be compiled with LTO enabled, but I've lost track of it.
Anyone think trying an emerge -e @system is worth a shot (with kernel 3.5.2 and gcc-4.7.1) and seeing what fails, considering there might have been some progress in the last year or two since I last attempted this? |
I was just about to give a try, so, generally speaking, I can do this. The only thing is I'm using just stock 3.5.2 kernel instead of Gentoo's. I thing that other CFLAGS (besides -flto) would have great impact or successfull compilation. So below is mine:
Code: |
CFLAGS="-march=core2 -mssse3 -O2 -mfpmath=sse -pipe -fomit-frame-pointer -fno-ident -fforce-addr -ftracer -fweb -falign-functions=4 -ftree-vectorize -flto -floop-interchange -floop-strip-mine -floop-block"
|
Pls, let me know if everything is fine with these CFLAGS above. |
|
Back to top |
|
|
xming Guru
Joined: 02 Jul 2002 Posts: 441
|
Posted: Tue Aug 21, 2012 9:07 am Post subject: |
|
|
wrc1944 wrote: | Thanks xming,
Just to clarify, you're enabling LTO for individual packages in /etc/portage/env/, correct?
IIRC, a while back there was a forum thread that started listing packages that could be compiled with LTO enabled, but I've lost track of it.
Anyone think trying an emerge -e @system is worth a shot (with kernel 3.5.2 and gcc-4.7.1) and seeing what fails, considering there might have been some progress in the last year or two since I last attempted this? |
Yes I am using /etc/portage/env/, I was having more packages built with gcc 4.6.x than 4.7, so I had to dial back the lto usage. _________________ http://wojia.be |
|
Back to top |
|
|
ebrsc n00b
Joined: 24 Jun 2008 Posts: 31
|
Posted: Tue Aug 21, 2012 3:10 pm Post subject: |
|
|
I'm running 3.6-lto on two different x86_64 machines (thinkpad x201+router/firewall) and it's very stable so far. I'll do some few benchmarks soon, network latency seems to have been significantly improved. |
|
Back to top |
|
|
wrc1944 Advocate
Joined: 15 Aug 2002 Posts: 3435 Location: Gainesville, Florida
|
Posted: Wed Aug 22, 2012 5:34 am Post subject: |
|
|
Here's a few new Aug. 21, 2012 benchmarks from Phoronix:
http://www.phoronix.com/scan.php?page=article&item=gcc_471_lto&num=1
Most seem to make little difference, but when it does make a difference on a specific benchmark it's significant, particularly the BYTE Dhyrstone 2 test, where the LTO-optimized binary was about 34% faster. _________________ Main box- AsRock x370 Gaming K4
Ryzen 7 3700x, 3.6GHz, 16GB GSkill Flare DDR4 3200mhz
Samsung SATA 1000GB, Radeon HD R7 350 2GB DDR5
OpenRC Gentoo ~amd64 plasma, glibc-2.36-r7, gcc-13.2.1_p20230304
kernel-6.8.4 USE=experimental python3_11 |
|
Back to top |
|
|
costel78 Guru
Joined: 20 Apr 2007 Posts: 402
|
Posted: Mon Aug 27, 2012 6:09 pm Post subject: |
|
|
I enabled -lto globally since gcc 4.7.1 was in the portage tree.
Packages which does not compile or are buggy with lto:
/etc/portage/package.env
Code: | app-emulation/virtualbox no-lto.conf
app-office/libreoffice no-lto.conf
app-text/aspell no-lto.conf
app-text/rarian no-lto.conf
dev-db/mariadb no-lto.conf
dev-java/antlr no-lto.conf
dev-lang/fpc no-lto.conf
dev-lang/lazarus no-lto.conf
dev-lang/perl no-lto.conf
dev-lang/spidermonkey no-lto.conf
dev-libs/elfutils no-lto.conf
dev-libs/glib no-lto.conf
dev-python/notify-python no-lto.conf
dev-python/pyorbit no-lto.conf
dev-scheme/guile no-lto.conf
kde-base/kdelibs no-lto.conf
kde-base/okular no-lto.conf
media-libs/alsa-lib no-lto.conf
media-libs/mesa no-lto.conf
media-sound/pulseaudio no-lto.conf
media-sound/wavpack no-lto.conf
media-tv/xbmc no-lto.conf
media-video/ffmpeg no-lto.conf
media-video/mplayer2 no-lto.conf
media-video/mplayer no-lto.conf
net-libs/webkit-gtk no-lto.conf
sys-apps/pciutils no-lto.conf
sys-auth/polkit no-lto.conf
sys-devel/llvm no-lto.conf
x11-base/xorg-server no-lto.conf
x11-libs/qt-webkit no-lto.conf
x11-libs/wxGTK:2.8 no-lto.conf |
emerge --info:
Code: | Portage 2.2.0_alpha123 (default/linux/amd64/10.0/no-multilib, gcc-4.7.1, glibc-2.16.0, 3.5.3-gentoo-costel x86_64)
=================================================================
System uname: Linux-3.5.3-gentoo-costel-x86_64-Intel-R-_Core-TM-_i7_CPU_860_@_2.80GHz-with-gentoo-2.2
Timestamp of tree: Mon, 27 Aug 2012 17:30:01 +0000
app-shells/bash: 4.2_p37
dev-java/java-config: 2.1.12
dev-lang/python: 2.7.3-r2, 3.2.3-r1
dev-util/cmake: 2.8.9
dev-util/pkgconfig: 0.27.1
sys-apps/baselayout: 2.2
sys-apps/openrc: 0.10.5
sys-apps/sandbox: 2.6
sys-devel/autoconf: 2.13, 2.69
sys-devel/automake: 1.11.6, 1.12.3
sys-devel/binutils: 2.22.90
sys-devel/gcc: 4.7.1
sys-devel/gcc-config: 1.7.3
sys-devel/libtool: 2.4.2
sys-devel/make: 3.82-r3
sys-kernel/linux-headers: 3.5 (virtual/os-headers)
sys-libs/glibc: 2.16.0
Repositories: gentoo added
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe -floop-interchange -floop-strip-mine -floop-block -flto=8 -fuse-linker-plugin"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /var/bind /var/lib/hsqldb"
CONFIG_PROTECT_MASK="${EPREFIX}/etc/gconf /etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.4/ext-active/ /etc/php/cgi-php5.4/ext-active/ /etc/php/cli-php5.4/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-O2 -pipe -floop-interchange -floop-strip-mine -floop-block -flto=8 -fuse-linker-plugin -fpermissive"
DISTDIR="/mnt/linux/distfiles"
EMERGE_DEFAULT_OPTS="--jobs=4 --load-average=10 --keep-going --with-bdeps=y --complete-graph --quiet-build=n --autounmask-write"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs candy collision-protect config-protect-if-modified distlocks fail-clean fixlafiles news nodoc noinfo parallel-fetch parallel-install parse-eapi-ebuild-head preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://mirrors.xservers.ro/gentoo/ http://ftp.roedu.net/pub/mirrors/gentoo.org/ http://distfiles.gentoo.org/ http://distfiles.gentoo.org"
LANG="ro_RO.UTF-8"
LC_ALL="ro_RO.UTF-8"
LDFLAGS="-Wl,-O1,--sort-common,--hash-style=gnu,--as-needed -O2 -pipe -floop-interchange -floop-strip-mine -floop-block -flto=8 -fuse-linker-plugin"
LINGUAS="ro en"
MAKEOPTS="-j8 --load-average=10"
PKGDIR="/usr/portage/packages"
PORTAGE_COMPRESS="bzip2"
PORTAGE_COMPRESS_FLAGS="-9"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_EXTRA_OPTS="--human-readable --delete-before --progress"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage/local/added"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X a52 aac acl acpi alsa amd64 bluetooth branding bzip2 cairo cdda cdr cli colord consolekit corefonts cpudetection cracklib crypt cups cxx dbus dri dts dvd dvdr eds emboss encode evo exif fam ffmpeg firefox flac fontconfig fortran gdbm gif gnome gnome-keyring gnome-online-accounts gpm graphviz gstreamer gtk gtk3 iconv icu imagemagick inotify introspection ipv6 ithreads jpeg jpeg2k kde lcms libnotify mad mmx mng mp3 mp4 mpeg mudflap mysql nautilus ncurses networkmanager nls nptl ogg opengl openmp pam pango pch pcre pdf png policykit postgres ppds pulseaudio qt3support qt4 readline sasl sdl session spell sse sse2 ssl ssse3 ssse4 startup-notification svg systemd tcpd theora threads tiff truetype udev udisks unicode upower usb vdpau vhosts vorbis wxwidgets x264 xcb xinerama xml xorg xv xvid zlib" ALSA_CARDS="virtuoso hda-intel" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias auth_digest ident imagemap log_forensic reqtimeout substitute version" APACHE2_MPMS="worker" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="evdev keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="ro en" NETBEANS_MODULES="apisupport java javafx php profiler websvccommon" PHP_TARGETS="php5-4" PYTHON_TARGETS="python3_2 python2_7" RUBY_TARGETS="ruby19" USERLAND="GNU" VIDEO_CARDS="nv nvidia" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset: CPPFLAGS, CTARGET, INSTALL_MASK, PORTAGE_BUNZIP2_COMMAND, USE_PYTHON |
The system is rock stable. I haven't had any problem regarding lto, other than not compile with lto (except glib, but it was a know issue). Binaries are smaller. Is it faster ? Well, I don't know. It's not noticeable. I have an CPU still powerful and my system is on an SSD, so... it's hard to notice a speed improvement without benchmarks. _________________ Sorry for my English. I'm still learning this language. |
|
Back to top |
|
|
asturm Developer
Joined: 05 Apr 2007 Posts: 8936
|
Posted: Mon Aug 27, 2012 6:15 pm Post subject: |
|
|
@costel78: To me it would be worth knowing what version of virtualbox you managed to build with gcc-4.7.1 - by chance, does dev86 build successfully too? |
|
Back to top |
|
|
mv Watchman
Joined: 20 Apr 2005 Posts: 6747
|
Posted: Mon Aug 27, 2012 6:35 pm Post subject: |
|
|
The list of packages which do not compile with -lto is not really shrinking. In fact, with newer versions of packages and gcc-4.7.1, I even had to add some. Here is my current list for filtering -flto and related flags: Code: | *-libs/* +fwhole-program
*-plugins/* +fwhole-program
app-admin/sudo +fwhole-program
app-arch/bzip2 +flto* +fuse-linker-plugin +fwhole-program
app-arch/cpio +flto* +fuse-linker-plugin +fwhole-program
app-arch/p7zip +flto* +fuse-linker-plugin +fwhole-program
app-arch/par2cmdline +flto* +fuse-linker-plugin +fwhole-program
app-arch/sharutils +fwhole-program
app-arch/star +flto* +fuse-linker-plugin +fwhole-program
app-arch/tar +fwhole-program
app-arch/unrar +flto* +fuse-linker-plugin +fwhole-program
app-arch/unzip +fwhole-program
app-arch/zpaq +fwhole-program
app-backup/dar +flto* +fuse-linker-plugin +fwhole-program
app-cdr/cdrtools +flto* +fuse-linker-plugin +fwhole-program
app-cdr/k3b +flto* +fuse-linker-plugin +fwhole-program
app-crypt/gnupg +fwhole-program
app-crypt/pinentry +fwhole-program
app-crypt/qca +flto* +fuse-linker-plugin +fwhole-program
app-editors/kile +flto* +fuse-linker-plugin +fwhole-program
app-editors/vim +flto* +fuse-linker-plugin +fwhole-program
app-emulation/bochs +flto* +fuse-linker-plugin +fwhole-program
app-emulation/dosemu +flto* +fuse-linker-plugin +fwhole-program
app-emulation/vice +flto* +fuse-linker-plugin +fwhole-program
app-emulation/wine +flto* +fuse-linker-plugin +fwhole-program
app-misc/lirc +fwhole-program
app-misc/mc +fwhole-program
app-misc/strigi +flto* +fuse-linker-plugin +fwhole-program
#app-misc/tmux +flto* +fuse-linker-plugin +fwhole-program
app-office/calligra +flto* +fuse-linker-plugin +fwhole-program
app-office/libreoffice +flto* +fuse-linker-plugin +fwhole-program
app-shells/bash +flto* +fuse-linker-plugin +fwhole-program
app-shells/zsh +flto* +fuse-linker-plugin +fwhole-program
app-text/a2ps +fwhole-program
app-text/aspell +flto* +fuse-linker-plugin +fwhole-program
app-text/convertlit +fwhole-program
app-text/djvu +flto* +fuse-linker-plugin +fwhole-program
app-text/dvipsk +flto* +fuse-linker-plugin +fwhole-program
app-text/ebook-tools +fwhole-program
app-text/ghostscript-gpl +flto* +fuse-linker-plugin +fwhole-program
app-text/gocr +fwhole-program
app-text/hunspell +flto* +fuse-linker-plugin +fwhole-program
app-text/poppler +flto* +fuse-linker-plugin +fwhole-program
app-text/ps2pkm +flto* +fuse-linker-plugin +fwhole-program
app-text/rarian +flto* +fuse-linker-plugin +fwhole-program
app-text/recode +fwhole-program
app-text/sablotron +flto* +fuse-linker-plugin +fwhole-program
app-text/stardict +flto* +fuse-linker-plugin +fwhole-program
app-text/teckit +flto* +fuse-linker-plugin +fwhole-program
app-text/texlive-core +flto* +fuse-linker-plugin +fwhole-program
app-text/unpaper +flto* +fuse-linker-plugin +fwhole-program
app-text/wdiff +fwhole-program
app-text/xdvik +flto* +fuse-linker-plugin +fwhole-program
app-text/zathura* +fwhole-program
dev-cpp/atkmm +flto* +fuse-linker-plugin +fwhole-program
dev-cpp/cairomm +flto* +fuse-linker-plugin +fwhole-program
dev-cpp/clucene +flto* +fuse-linker-plugin +fwhole-program
dev-cpp/glibmm +flto* +fuse-linker-plugin +fwhole-program
dev-cpp/gtkmm +flto* +fuse-linker-plugin +fwhole-program
dev-cpp/libxmlpp +flto* +fuse-linker-plugin +fwhole-program
dev-cpp/pangomm +flto* +fuse-linker-plugin +fwhole-program
dev-db/sqlite +flto* +fuse-linker-plugin +fwhole-program
dev-games/flatzebra +flto* +fuse-linker-plugin +fwhole-program
dev-java/icedtea* +flto* +fuse-linker-plugin +fwhole-program
dev-lang/lua +flto* +fuse-linker-plugin +fwhole-program
dev-lang/orc +flto* +fuse-linker-plugin +fwhole-program
dev-lang/perl +flto* +fuse-linker-plugin +fwhole-program
dev-lang/python +flto* +fuse-linker-plugin +fwhole-program
dev-lang/ruby +flto* +fuse-linker-plugin +fwhole-program
dev-lang/tcl +flto* +fuse-linker-plugin +fwhole-program
dev-lang/tk +flto* +fuse-linker-plugin +fwhole-program
dev-libs/boost +flto* +fuse-linker-plugin +fwhole-program
dev-libs/dbus-glib +flto* +fuse-linker-plugin +fwhole-program
dev-libs/elfutils +flto* +fuse-linker-plugin +fwhole-program
dev-libs/glib +flto* +fuse-linker-plugin +fwhole-program
dev-libs/gmp +flto* +fuse-linker-plugin +fwhole-program
dev-libs/libcdio +flto* +fuse-linker-plugin +fwhole-program
dev-libs/libpcre +flto* +fuse-linker-plugin +fwhole-program
dev-libs/libsigc++ +flto* +fuse-linker-plugin +fwhole-program
dev-libs/libusb +flto* +fuse-linker-plugin +fwhole-program
dev-libs/nspr +flto* +fuse-linker-plugin +fwhole-program
dev-libs/openssl +flto* +fuse-linker-plugin +fwhole-program
dev-libs/ppl +flto* +fuse-linker-plugin +fwhole-program
dev-libs/rlog +flto* +fuse-linker-plugin +fwhole-program
dev-libs/skalibs +flto* +fuse-linker-plugin +fwhole-program
dev-libs/xerces-c +flto* +fuse-linker-plugin +fwhole-program
dev-libs/zziplib +flto* +fuse-linker-plugin +fwhole-program
dev-lisp/clisp +flto* +fuse-linker-plugin +fwhole-program
dev-perl/* +flto* +fuse-linker-plugin +fwhole-program
dev-python/* +flto* +fuse-linker-plugin +fwhole-program
dev-scheme/guile +flto* +fuse-linker-plugin +fwhole-program
dev-tcltk/expect +flto* +fuse-linker-plugin +fwhole-program
dev-tex/luatex +flto* +fuse-linker-plugin +fwhole-program
dev-util/bdelta +flto* +fuse-linker-plugin +fwhole-program
dev-util/cmake +flto* +fuse-linker-plugin +fwhole-program
dev-util/dialog +flto* +fuse-linker-plugin +fwhole-program
dev-util/ltrace +flto* +fuse-linker-plugin +fwhole-program
dev-util/schroot +flto* +fuse-linker-plugin +fwhole-program
dev-util/valgrind +fwhole-program
dev-vcs/cvs +fwhole-program
dev-vcs/git +flto* +fuse-linker-plugin +fwhole-program
dev-vcs/mercurial +flto* +fuse-linker-plugin +fwhole-program
dev-vcs/monotone +flto* +fuse-linker-plugin +fwhole-program
dev-vcs/subversion +flto* +fuse-linker-plugin +fwhole-program
games-action/gltron +flto* +fuse-linker-plugin +fwhole-program
games-arcade/kobodeluxe +fwhole-program
games-arcade/lbreakout +flto* +fuse-linker-plugin +fwhole-program
games-arcade/rocksndiamonds +fwhole-program
games-arcade/xgalaga +fwhole-program
games-board/xboard +flto* +fuse-linker-plugin +fwhole-program
games-emulation/advancemame +fwhole-program
games-emulation/dosbox +flto* +fuse-linker-plugin +fwhole-program
games-emulation/sdlmame +flto* +fuse-linker-plugin +fwhole-program
games-emulation/xmame +flto* +fuse-linker-plugin +fwhole-program
games-emulation/xmess +flto* +fuse-linker-plugin +fwhole-program
games-engines/scummvm +flto* +fuse-linker-plugin +fwhole-program
games-engines/scummvm-tools +flto* +fuse-linker-plugin +fwhole-program
games-fps/doomsday +flto* +fuse-linker-plugin +fwhole-program
games-fps/prboom +flto* +fuse-linker-plugin +fwhole-program
games-puzzle/enigma +flto* +fuse-linker-plugin +fwhole-program
games-rpg/freedroidrpg +flto* +fuse-linker-plugin +fwhole-program
gnome-base/libglade +flto* +fuse-linker-plugin +fwhole-program
kde-base/* +flto* +fuse-linker-plugin +fwhole-program
mail-client/claws-mail +flto* +fuse-linker-plugin +fwhole-program
mail-client/pine +fwhole-program
mail-filter/maildrop +fwhole-program
media-gfx/exiv2 +flto* +fuse-linker-plugin +fwhole-program
media-gfx/gimp +flto* +fuse-linker-plugin +fwhole-program
media-gfx/graphicsmagick +flto* +fuse-linker-plugin +fwhole-program
media-gfx/graphviz +flto* +fuse-linker-plugin +fwhole-program
media-gfx/imagemagick +flto* +fuse-linker-plugin +fwhole-program
media-gfx/pstoedit +flto* +fuse-linker-plugin +fwhole-program
media-gfx/sam2p +flto* +fuse-linker-plugin +fwhole-program
media-gfx/sane-backends +flto* +fuse-linker-plugin +fwhole-program
media-gfx/transfig +flto* +fuse-linker-plugin +fwhole-program
media-gfx/xv +flto* +fuse-linker-plugin +fwhole-program
media-libs/alsa-lib +flto* +fuse-linker-plugin +fwhole-program
media-libs/flac +flto* +fuse-linker-plugin +fwhole-program
media-libs/freetype +flto* +fuse-linker-plugin +fwhole-program
media-libs/giflib +flto* +fuse-linker-plugin +fwhole-program
media-libs/gstreamer +flto* +fuse-linker-plugin +fwhole-program
media-libs/jbigkit +flto* +fuse-linker-plugin +fwhole-program
media-libs/jpeg +flto* +fuse-linker-plugin +fwhole-program
media-libs/libcaca +flto* +fuse-linker-plugin +fwhole-program
media-libs/libdvbpsi +flto* +fuse-linker-plugin +fwhole-program
media-libs/libdvdnav +flto* +fuse-linker-plugin +fwhole-program
media-libs/libdvdread +flto* +fuse-linker-plugin +fwhole-program
media-libs/liblastfm +flto* +fuse-linker-plugin +fwhole-program
media-libs/libmodplug +flto* +fuse-linker-plugin +fwhole-program
media-libs/libmp4v2 +flto* +fuse-linker-plugin +fwhole-program
media-libs/libpng +flto* +fuse-linker-plugin +fwhole-program
media-libs/libsidplay +flto* +fuse-linker-plugin +fwhole-program
media-libs/libsndfile +flto* +fuse-linker-plugin +fwhole-program
media-libs/libv4l +flto* +fuse-linker-plugin +fwhole-program
media-libs/libvpx +flto* +fuse-linker-plugin +fwhole-program
media-libs/mediastreamer +flto* +fuse-linker-plugin +fwhole-program
media-libs/mesa +flto* +fuse-linker-plugin +fwhole-program
media-libs/musicbrainz +flto* +fuse-linker-plugin +fwhole-program
media-libs/netpbm +flto* +fuse-linker-plugin +fwhole-program
media-libs/opencore-amr +flto* +fuse-linker-plugin +fwhole-program
media-libs/openjpeg +flto* +fuse-linker-plugin +fwhole-program
media-libs/phonon +flto* +fuse-linker-plugin +fwhole-program
media-libs/plotutils +flto* +fuse-linker-plugin +fwhole-program
media-libs/raptor +flto* +fuse-linker-plugin +fwhole-program
media-libs/schroedinger +flto* +fuse-linker-plugin +fwhole-program
media-libs/silgraphite +flto* +fuse-linker-plugin +fwhole-program
media-libs/smpeg +flto* +fuse-linker-plugin +fwhole-program
media-libs/t1lib +flto* +fuse-linker-plugin +fwhole-program
media-libs/tiff +flto* +fuse-linker-plugin +fwhole-program
media-libs/x264 +flto* +fuse-linker-plugin +fwhole-program
media-libs/zvbi +flto* +fuse-linker-plugin +fwhole-program
media-plugins/live +flto* +fuse-linker-plugin +fwhole-program
media-sound/audacity +flto* +fuse-linker-plugin +fwhole-program
media-sound/audex +flto* +fuse-linker-plugin +fwhole-program
media-sound/cdparanoia +flto* +fuse-linker-plugin +fwhole-program
media-sound/gsm +flto* +fuse-linker-plugin +fwhole-program
media-sound/kradio +flto* +fuse-linker-plugin +fwhole-program
media-sound/kstreamripper +flto* +fuse-linker-plugin +fwhole-program
media-sound/lilypond +flto* +fuse-linker-plugin +fwhole-program
media-sound/musepack-tools +fwhole-program
media-sound/normalize +flto* +fuse-linker-plugin +fwhole-program
media-sound/qmmp +fwhole-program
media-sound/timidity++ +flto* +fuse-linker-plugin +fwhole-program
media-sound/vorbis-tools +flto* +fuse-linker-plugin +fwhole-program
media-sound/xmms2 +flto* +fuse-linker-plugin +fwhole-program
media-tv/kdetv +flto* +fuse-linker-plugin +fwhole-program
media-tv/v4l-utils +flto* +fuse-linker-plugin +fwhole-program
media-tv/xawtv +flto* +fuse-linker-plugin +fwhole-program
media-video/avidemux +flto* +fuse-linker-plugin +fwhole-program
media-video/cclive +flto* +fuse-linker-plugin +fwhole-program
media-video/dirac +flto* +fuse-linker-plugin +fwhole-program
media-video/ffmpeg +flto* +fuse-linker-plugin +fwhole-program
media-video/ffmpegthumbnailer +flto* +fuse-linker-plugin +fwhole-program
media-video/gnome-mplayer +fwhole-program
media-video/kaffeine +flto* +fuse-linker-plugin +fwhole-program
media-video/libav +flto* +fuse-linker-plugin +fwhole-program
media-video/mjpegtools +flto* +fuse-linker-plugin +fwhole-program
media-video/mplayer +flto* +fuse-linker-plugin +fwhole-program
media-video/mplayer2 +flto* +fuse-linker-plugin +fwhole-program
media-video/transcode +flto* +fuse-linker-plugin +fwhole-program
media-video/vlc +flto* +fuse-linker-plugin +fwhole-program
media-video/xine-ui +flto* +fuse-linker-plugin +fwhole-program
net-analyzer/wireshark +flto* +fuse-linker-plugin +fwhole-program
net-dialup/ppp +flto* +fuse-linker-plugin +fwhole-program
net-dns/libidn +fwhole-program
net-dns/pdnsd +flto* +fuse-linker-plugin +fwhole-program
net-firewall/ipsec-tools +fwhole-program
net-firewall/iptables +flto* +fuse-linker-plugin +fwhole-program
net-ftp/lftp +flto* +fuse-linker-plugin +fwhole-program
net-libs/gnutls +flto* +fuse-linker-plugin +fwhole-program
net-libs/libetpan +flto* +fuse-linker-plugin +fwhole-program
net-libs/libpcap +flto* +fuse-linker-plugin +fwhole-program
net-libs/libsrtp +flto* +fuse-linker-plugin +fwhole-program
net-libs/opal +flto* +fuse-linker-plugin +fwhole-program
net-libs/ptlib +flto* +fuse-linker-plugin +fwhole-program
net-libs/wvstreams +flto* +fuse-linker-plugin +fwhole-program
net-mail/uw-mailutils +fwhole-program
net-misc/curl +flto* +fuse-linker-plugin +fwhole-program
net-misc/iputils +flto* +fuse-linker-plugin +fwhole-program
net-misc/nx +flto* +fuse-linker-plugin +fwhole-program
net-misc/nxcl +flto* +fuse-linker-plugin +fwhole-program
net-misc/openssh +flto* +fuse-linker-plugin +fwhole-program
net-misc/tor +flto* +fuse-linker-plugin +fwhole-program
net-p2p/ktorrent +flto* +fuse-linker-plugin +fwhole-program
net-print/cups +flto* +fuse-linker-plugin +fwhole-program
net-print/foo2zjs +flto* +fuse-linker-plugin +fwhole-program
net-voip/ekiga +flto* +fuse-linker-plugin +fwhole-program
net-voip/yate +flto* +fuse-linker-plugin +fwhole-program
perl-core/* +flto* +fuse-linker-plugin +fwhole-program
sci-libs/cln +flto* +fuse-linker-plugin +fwhole-program
sci-libs/gdal +flto* +fuse-linker-plugin +fwhole-program
sci-libs/libgeotiff +flto* +fuse-linker-plugin +fwhole-program
sci-libs/qrupdate +flto* +fuse-linker-plugin +fwhole-program
sci-mathematics/axiom +flto* +fuse-linker-plugin +fwhole-program
sci-mathematics/ginac +flto* +fuse-linker-plugin +fwhole-program
sci-mathematics/glpk +flto* +fuse-linker-plugin +fwhole-program
sci-mathematics/octave +flto* +fuse-linker-plugin +fwhole-program
sci-mathematics/pari +flto* +fuse-linker-plugin +fwhole-program
sci-mathematics/scilab +flto* +fuse-linker-plugin +fwhole-program
sci-visualization/gnuplot +flto* +fuse-linker-plugin +fwhole-program
sys-apps/busybox +flto* +fuse-linker-plugin +fwhole-program
sys-apps/coreutils +fwhole-program
sys-apps/dbus +flto* +fuse-linker-plugin +fwhole-program
sys-apps/fakeroot-ng +fwhole-program
sys-apps/findutils +fwhole-program
sys-apps/gawk +flto* +fuse-linker-plugin +fwhole-program
sys-apps/grep +fwhole-program
sys-apps/groff +fwhole-program
sys-apps/hdparm +flto* +fuse-linker-plugin +fwhole-program
sys-apps/iproute2 +fwhole-program
sys-apps/less* +flto* +fuse-linker-plugin +fwhole-program
sys-apps/module-init-tools +fwhole-program
sys-apps/openrc +flto +fuse-linker-plugin +fwhole-program
sys-apps/pciutils +flto* +fuse-linker-plugin +fwhole-program
sys-apps/sandbox +fwhole-program
sys-apps/shadow +flto* +fuse-linker-plugin +fwhole-program
sys-apps/sysvinit +flto* +fuse-linker-plugin +fwhole-program
sys-apps/util-linux +flto* +fuse-linker-plugin +fwhole-program
sys-apps/which +flto* +fuse-linker-plugin +fwhole-program
sys-auth/polkit +flto* +fuse-linker-plugin +fwhole-program
sys-auth/polkit-qt +flto* +fuse-linker-plugin +fwhole-program
sys-devel/bc +fwhole-program
sys-devel/clang +flto* +fuse-linker-plugin +fwhole-program # -flto needs >3GB here
sys-devel/flex +flto* +fuse-linker-plugin +fwhole-program
sys-devel/gettext +flto* +fuse-linker-plugin +fwhole-program
sys-devel/libtool +flto* +fuse-linker-plugin +fwhole-program
sys-devel/llvm +flto* +fuse-linker-plugin +fwhole-program
sys-fs/ddrescue +flto* +fuse-linker-plugin +fwhole-program
sys-fs/dosfstools +flto* +fuse-linker-plugin +fwhole-program
sys-fs/e2fsprogs +flto* +fuse-linker-plugin +fwhole-program
sys-fs/encfs +flto* +fuse-linker-plugin +fwhole-program
sys-fs/ext4magic +flto* +fuse-linker-plugin +fwhole-program
sys-fs/lvm2 +flto* +fuse-linker-plugin +fwhole-program
sys-fs/mtools +flto* +fuse-linker-plugin +fwhole-program
sys-fs/squashfs-tools +flto* +fuse-linker-plugin +fwhole-program
sys-fs/udev +flto* +fuse-linker-plugin +fwhole-program
sys-fs/udftools +flto* +fuse-linker-plugin +fwhole-program
sys-fs/udisks +flto* +fuse-linker-plugin +fwhole-program
sys-fs/unionfs-fuse +flto* +fuse-linker-plugin +fwhole-program
sys-kernel/kccmp +flto* +fuse-linker-plugin +fwhole-program
sys-libs/e2fsprogs-libs +flto* +fuse-linker-plugin +fwhole-program
sys-libs/glibc +flto* +fuse-linker-plugin +fwhole-program
sys-libs/gpm +flto* +fuse-linker-plugin +fwhole-program
sys-libs/libcap +flto* +fuse-linker-plugin +fwhole-program
sys-libs/ncurses +flto* +fuse-linker-plugin +fwhole-program
sys-libs/slang +flto* +fuse-linker-plugin +fwhole-program
sys-libs/zlib +flto* +fuse-linker-plugin +fwhole-program
sys-power/hibernate-script +fwhole-program
sys-power/upower +flto* +fuse-linker-plugin +fwhole-program
sys-process/lsof +fwhole-program
sys-process/numactl +flto* +fuse-linker-plugin +fwhole-program
sys-process/procps +flto* +fuse-linker-plugin +fwhole-program
www-client/dillo +flto* +fuse-linker-plugin +fwhole-program
www-client/firefox +flto* +fuse-linker-plugin +fwhole-program
www-client/lynx +fwhole-program
www-plugins/gnash +flto* +fuse-linker-plugin +fwhole-program
www-plugins/mozplugger +flto* +fuse-linker-plugin +fwhole-program
x11-apps/xrandr +flto* +fuse-linker-plugin +fwhole-program
x11-base/xorg-server +flto* +fuse-linker-plugin +fwhole-program
x11-libs/fltk +flto* +fuse-linker-plugin +fwhole-program
x11-libs/gdk-pixbuf +flto* +fuse-linker-plugin +fwhole-program
x11-libs/gtkglext +flto* +fuse-linker-plugin +fwhole-program
x11-libs/libX11 +flto* +fuse-linker-plugin +fwhole-program
x11-libs/libXaw3d +flto* +fuse-linker-plugin +fwhole-program
x11-libs/libvdpau +flto* +fuse-linker-plugin +fwhole-program
x11-libs/libwnck +flto* +fuse-linker-plugin +fwhole-program
x11-libs/openmotif +flto* +fuse-linker-plugin +fwhole-program
x11-libs/pango +flto* +fuse-linker-plugin +fwhole-program
x11-libs/qt-* +flto* +fuse-linker-plugin +fwhole-program
x11-libs/wxGTK +flto* +fuse-linker-plugin +fwhole-program
x11-misc/xfractint +flto* +fuse-linker-plugin +fwhole-program
x11-misc/xscreensaver +flto* +fuse-linker-plugin +fwhole-program
x11-wm/fvwm +flto* +fuse-linker-plugin +fwhole-program
xfce-base/garcon +flto* +fuse-linker-plugin +fwhole-program
xfce-base/libxfce4ui +flto* +fuse-linker-plugin +fwhole-program
xfce-base/libxfce4util +flto* +fuse-linker-plugin +fwhole-program
xfce-base/libxfcegui4 +flto* +fuse-linker-plugin +fwhole-program
xfce-base/thunar +flto* +fuse-linker-plugin +fwhole-program
xfce-base/xfconf +flto* +fuse-linker-plugin +fwhole-program | My experience is that everything which compiles with LTO also runs without problems. However, for many packages, I get warnings related to -D_FORTIFY_SOURCE=2 (e.g. warnings about possibly transposed arguments of memset) which do not occur without flto and which are hard to reproduce (e.g. I realized that they depend on the order of includes of standard libraries). I have not tried vanilla gcc, i.e. it could be that this problem is only related with gentoo's patches concerning D_FORTIFY_SOURCE.
Last edited by mv on Mon Aug 27, 2012 6:40 pm; edited 1 time in total |
|
Back to top |
|
|
costel78 Guru
Joined: 20 Apr 2007 Posts: 402
|
Posted: Mon Aug 27, 2012 6:35 pm Post subject: |
|
|
Unfortunately I'm on no-multilib profile so I'm able to use just virtualbox-bin, but I just tested it and sys-devel/dev86-0.16.18 emerge was successfully. _________________ Sorry for my English. I'm still learning this language. |
|
Back to top |
|
|
devsk Advocate
Joined: 24 Oct 2003 Posts: 2995 Location: Bay Area, CA
|
Posted: Tue Aug 28, 2012 5:30 am Post subject: |
|
|
I wonder how many of these packages are failing because of:
Quote: | Link-time optimization does not work well with generation of debugging information. Combining -flto with -g is currently experimental and expected to produce wrong results. |
|
|
Back to top |
|
|
mv Watchman
Joined: 20 Apr 2005 Posts: 6747
|
Posted: Tue Aug 28, 2012 3:03 pm Post subject: |
|
|
devsk wrote: | I wonder how many of these packages are failing because of:
Quote: | Link-time optimization does not work well with generation of debugging information. Combining -flto with -g is currently experimental and expected to produce wrong results. |
|
Probably none. I would guess the "expected to produce wrong results" refer to broken debugging information. However, even if it does not: I doubt that many packages add -g by themselves to CFLAGS, and AFAIK neither do gentoo's gcc patches nor portage if used in "normal" mode. |
|
Back to top |
|
|
devsk Advocate
Joined: 24 Oct 2003 Posts: 2995 Location: Bay Area, CA
|
Posted: Tue Aug 28, 2012 4:00 pm Post subject: |
|
|
mv wrote: | devsk wrote: | I wonder how many of these packages are failing because of:
Quote: | Link-time optimization does not work well with generation of debugging information. Combining -flto with -g is currently experimental and expected to produce wrong results. |
|
Probably none. I would guess the "expected to produce wrong results" refer to broken debugging information. However, even if it does not: I doubt that many packages add -g by themselves to CFLAGS, and AFAIK neither do gentoo's gcc patches nor portage if used in "normal" mode. | I have not been able to figure this out. May be u can help. Parts of firefox build are done using "-g". And those parts fail to build when CFLAGS/CXXFLAGS have -flto also. Are you able to build firefox with -flto? I have the "custom-cflags custom-optimization" USE flags for firefox and use package.env to set lto. |
|
Back to top |
|
|
devsk Advocate
Joined: 24 Oct 2003 Posts: 2995 Location: Bay Area, CA
|
Posted: Wed Aug 29, 2012 4:27 am Post subject: |
|
|
This is the error I am talking about. Anybody got any ideas?
Code: | /usr/bin/python2.7 /tmp/portage/portage/www-client/firefox-15.0_beta5/work/mozilla-beta/js/src/config/pythonpath.py -I../config /tmp/portage/portage/www-client/firefox-15.0_beta5/work/mozilla-beta/js/src/config/expandlibs_exec.py --uselist -- i686-pc-linux-gnu-g++ -o js -fno-rtti -Wall -Wpointer-arith -Woverloaded-virtual -Werror=return-type -Wtype-limits -Wempty-body -Wno-ctor-dtor-privacy -Wno-overlength-strings -Wno-invalid-offsetof -Wno-variadic-macros -Wcast-align -march=core2 -msse2 -msse3 -msse -fforce-addr -fomit-frame-pointer -pipe -ftracer -flto -fno-tracer -g0 -mno-avx -ffunction-sections -fdata-sections -pthread -pipe -DNDEBUG -DTRIMMED -g -O2 -fomit-frame-pointer js.o jsworkers.o jsoptparse.o jsheaptools.o -lpthread -Wl,-O1 -Wl,--as-needed -Wl,-O1 -Wl,--enable-new-dtags -Wl,--as-needed -Wl,--hash-style=gnu -flto -Wl,-rpath-link,../../../dist/bin -Wl,-rpath-link,/tmp/portage/portage/www-client/firefox-15.0_beta5/work/mozilla-beta/obj-x86_64-unknown-linux-gnu/dist/lib -L../../../dist/bin -L../../../dist/lib -Wl,-R/usr/lib -L/usr/lib -lplds4 -lplc4 -lnspr4 -lpthread -ldl ../editline/libeditline.a ../libjs_static.a -Wl,--whole-archive ../../../dist/lib/libmozglue.a ../../../dist/lib/libmemory.a -Wl,--no-whole-archive -rdynamic -ldl -lffi
jemalloc.o (symbol from plugin): warning: memset used with constant zero length parameter; this could be due to transposed parameters
`PushActiveVMFrame' referenced in section `.text' of /tmp/portage/portage/www-client/firefox-15.0_beta5/temp/ccYtcWMt.ltrans0.ltrans.o: defined in discarded section `.text' of MethodJIT.o (symbol from plugin)
`PopActiveVMFrame' referenced in section `.text' of /tmp/portage/portage/www-client/firefox-15.0_beta5/temp/ccYtcWMt.ltrans0.ltrans.o: defined in discarded section `.text' of MethodJIT.o (symbol from plugin)
`js_InternalThrow' referenced in section `.text' of /tmp/portage/portage/www-client/firefox-15.0_beta5/temp/ccYtcWMt.ltrans0.ltrans.o: defined in discarded section `.text' of InvokeHelpers.o (symbol from plugin)
`PopActiveVMFrame' referenced in section `.text' of /tmp/portage/portage/www-client/firefox-15.0_beta5/temp/ccYtcWMt.ltrans0.ltrans.o: defined in discarded section `.text' of MethodJIT.o (symbol from plugin)
`js_InternalInterpret' referenced in section `.text' of /tmp/portage/portage/www-client/firefox-15.0_beta5/temp/ccYtcWMt.ltrans0.ltrans.o: defined in discarded section `.text' of InvokeHelpers.o (symbol from plugin)
`PopActiveVMFrame' referenced in section `.text' of /tmp/portage/portage/www-client/firefox-15.0_beta5/temp/ccYtcWMt.ltrans0.ltrans.o: defined in discarded section `.text' of MethodJIT.o (symbol from plugin)
collect2: error: ld returned 1 exit status
make[6]: *** [js] Error 1
make[6]: Leaving directory `/tmp/portage/portage/www-client/firefox-15.0_beta5/work/mozilla-beta/obj-x86_64-unknown-linux-gnu/js/src/shell'
make[5]: *** [libs] Error 2
make[5]: Leaving directory `/tmp/portage/portage/www-client/firefox-15.0_beta5/work/mozilla-beta/obj-x86_64-unknown-linux-gnu/js/src' |
|
|
Back to top |
|
|
devsk Advocate
Joined: 24 Oct 2003 Posts: 2995 Location: Bay Area, CA
|
Posted: Wed Aug 29, 2012 7:10 pm Post subject: |
|
|
Has anybody built firefox with LTO? |
|
Back to top |
|
|
asturm Developer
Joined: 05 Apr 2007 Posts: 8936
|
Posted: Sat Sep 01, 2012 8:47 am Post subject: |
|
|
costel78 wrote: | Unfortunately I'm on no-multilib profile so I'm able to use just virtualbox-bin, but I just tested it and sys-devel/dev86-0.16.18 emerge was successfully. |
kthx, I've also built gcc-4.7.1 now and verified that there seems to be more than less breakage with current 4.7.2_pre9999 - virtualbox, dev86 won't build with the latter. But there's another thread for gcc-4.7 |
|
Back to top |
|
|
kernelOfTruth Watchman
Joined: 20 Dec 2005 Posts: 6111 Location: Vienna, Austria; Germany; hello world :)
|
|
Back to top |
|
|
firetwister n00b
Joined: 09 Feb 2005 Posts: 51
|
Posted: Wed Mar 27, 2013 12:18 pm Post subject: |
|
|
You need a patched linker, or else lto will be disabled automatically. |
|
Back to top |
|
|
kernelOfTruth Watchman
Joined: 20 Dec 2005 Posts: 6111 Location: Vienna, Austria; Germany; hello world :)
|
|
Back to top |
|
|
|