You are not logged in.

#101 2009-06-17 05:33:51

blasse
Member
From: Poland
Registered: 2008-04-24
Posts: 303

Re: Official firefox-pgo thread

methuselah wrote:

None of this may be correct or necessary, but this is what I did since I can't build pgo at all since 3.1b3

kazuo wrote:

Someone have any 3.1/3.5 version compiled for 64 bits that work? I cannot make eithe pgo or no-pgo to run (tested with 3.1b3 3.5b4 3.5b99 3.5rc1) I get segfaults on startup.

I just ditched the pgo, and built a normal optimized build with CFLAGS/LDFLAGS that compiles correctly using blasses firefox-pgo-beta tarball.

Before building the package I modified my /etc/makepkg.conf file's CFLAGS to not use the "-O2" or "-pipe" optimizations since the mozilla optimizer does this already in the mozconfig file. (I did this because someone had said that exporting CFLAGS had caused a problem..... I'm not sure if this is true but why chance it)

Probably not true. Pkgbuild uses '!makeflags' in options line, so it should disable all system-wide set cflags. After disabling it, makepkg should export only the one defined in pkgbuild.

I will try and add you ldflags2 patch to new rc1 release - maybe this will help? Update should be ready today smile

ps. jemalloc part seems to be already in code...

Last edited by blasse (2009-06-17 05:44:57)


Proud ex-maintainer of firefox-pgo

Offline

#102 2009-06-17 05:54:50

methuselah
Member
Registered: 2007-10-02
Posts: 570

Re: Official firefox-pgo thread

blasse wrote:
methuselah wrote:

None of this may be correct or necessary, but this is what I did since I can't build pgo at all since 3.1b3

kazuo wrote:

Someone have any 3.1/3.5 version compiled for 64 bits that work? I cannot make eithe pgo or no-pgo to run (tested with 3.1b3 3.5b4 3.5b99 3.5rc1) I get segfaults on startup.

I just ditched the pgo, and built a normal optimized build with CFLAGS/LDFLAGS that compiles correctly using blasses firefox-pgo-beta tarball.

Before building the package I modified my /etc/makepkg.conf file's CFLAGS to not use the "-O2" or "-pipe" optimizations since the mozilla optimizer does this already in the mozconfig file. (I did this because someone had said that exporting CFLAGS had caused a problem..... I'm not sure if this is true but why chance it)

Probably not true. Pkgbuild uses '!makeflags' in options line, so it should disable all system-wide set cflags. After disabling it, makepkg should export only the one defined in pkgbuild.

I will try and add you ldflags2 patch to new rc1 release - maybe this will help? Update should be ready today smile

It has my C[XX]FLAGS shown when compiling through the whole build. I had always thought that UNSET C[XX]FLAGS was what usually stops the C[XX]FLAGS during the firefox build..... and I always thought that was just in the PKGBUILD because most people have -O2 in their CFLAGS and mozilla optimize uses -Os for most of the optimize flags.... I could be totally wrong about this..... I had also thought !makeflags was for the makeflags set in the makepkg.conf like -j3? like I said, I could be totally wrong about all of this because this is all still new to me.

For example, this is from the abs firefox PKGBUILD:

  cp "${srcdir}/mozconfig" .mozconfig

  unset CFLAGS
  unset CXXFLAGS

  export LDFLAGS="-Wl,-rpath,/usr/lib/firefox-3.0"

Usually I have had my C[XX]FLAGS exported along with the LDFLAGS so I wouldn't need to edit my 'makepkg.conf', but I had read somewhere someone had said that there had been an issue with exporting..... is there a way I can check if my flags were used?

Last edited by methuselah (2009-06-17 06:01:46)

Offline

#103 2009-06-17 06:23:34

blasse
Member
From: Poland
Registered: 2008-04-24
Posts: 303

Re: Official firefox-pgo thread

As for C[XX]FLAGS - maybe than we should try first unset, than export? smile Most of the commonly used flags mozilla uses in sourcecode, so --enable-optimize in mozconfig will set them.
btw. If you set C[XX]FLAG that is already used by mozilla code (like - Ox), the mozilla one is used smile (gcc.4.4 uses last set flag of each type. Flags defined in code are added later that our own).
ps. Is jemalloc part of you patch is working for you in 3.5rc1?


Proud ex-maintainer of firefox-pgo

Offline

#104 2009-06-17 06:35:21

methuselah
Member
Registered: 2007-10-02
Posts: 570

Re: Official firefox-pgo thread

blasse wrote:

As for C[XX]FLAGS - maybe than we should try first unset, than export? smile Most of the commonly used flags mozilla uses in sourcecode, so --enable-optimize in mozconfig will set them.
btw. If you set C[XX]FLAG that is already used by mozilla code (like - Ox), the mozilla one is used smile (gcc.4.4 uses last set flag of each type. Flags defined in code are added later that our own).
ps. Is jemalloc part of you patch is working for you in 3.5rc1?

I trust however you want to do your package, I wasn't trying to hijack it or anything.

#################################################################

Just in case I started another build in the exact same way using that same PKGBUILD, this is what the results look like:

Screenshot-2-8.png
1440x900 view: http://i480.photobucket.com/albums/rr16 … ot-2-9.png

Screenshot-3-10.png
1440x900 view: http://i480.photobucket.com/albums/rr16 … t-3-11.png

Screenshot-4-9.png
1440x900 view: http://i480.photobucket.com/albums/rr16 … t-4-10.png


I also have the output from the terminal just in case I missed something that isn't using my flags (I stopped the build after about 1 minute). I here is a part of it that shows my C[XX]FLAGS:

gcc -o host_nsinstall.o -c -march=athlon64-sse3 -floop-interchange -floop-strip-mine -floop-block -DXP_UNIX -O3   -I/home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/config -I.  -I../../../dist/include   -I../../../dist/include -I/usr/include/nspr -I/sdk/include -I/usr/include/nspr /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/config/nsinstall.c
pathsub.c
gcc -o host_pathsub.o -c -march=athlon64-sse3 -floop-interchange -floop-strip-mine -floop-block -DXP_UNIX -O3   -I/home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/config -I.  -I../../../dist/include   -I../../../dist/include -I/usr/include/nspr -I/sdk/include -I/usr/include/nspr /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/config/pathsub.c
gcc -o nsinstall -march=athlon64-sse3 -floop-interchange -floop-strip-mine -floop-block -DXP_UNIX -O3   host_nsinstall.o host_pathsub.o  
make[5]: Leaving directory `/home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/ff-pgo/js/src/config'
/home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/ff-pgo/js/src/config/nsinstall -D ../../dist/include/js
make[5]: Entering directory `/home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/ff-pgo/js/src/config'
rm -f nfspwd
cp /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/config/nfspwd.pl nfspwd
chmod +x nfspwd
rm -f revdepth
cp /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/config/revdepth.pl revdepth
chmod +x revdepth
/home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/ff-pgo/js/src/config/nsinstall -R nsinstall ../../../dist/bin
if test ! -d system_wrappers_js; then mkdir system_wrappers_js; fi
/usr/bin/perl /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/config/preprocessor.pl -DOSTYPE=\"Linux2.6\" -DOSARCH=Linux -DHAVE_64BIT_OS=1 -DD_INO=d_ino -DSTDC_HEADERS=1 -DHAVE_ST_BLKSIZE=1 -DHAVE_SIGINFO_T=1 -DJS_HAVE_STDINT_H=1 -DJS_BYTES_PER_WORD=8 -DJS_BITS_PER_WORD_LOG2=6 -DJS_ALIGN_OF_POINTER=8 -DJS_BYTES_PER_DOUBLE=8 -DHAVE_INT16_T=1 -DHAVE_INT32_T=1 -DHAVE_INT64_T=1 -DHAVE_UINT=1 -DHAVE_UNAME_DOMAINNAME_FIELD=1 -DHAVE_CPP_2BYTE_WCHAR_T=1 -DHAVE_VISIBILITY_HIDDEN_ATTRIBUTE=1 -DHAVE_VISIBILITY_ATTRIBUTE=1 -DHAVE_DIRENT_H=1 -DHAVE_GETOPT_H=1 -DHAVE_SYS_BITYPES_H=1 -DHAVE_MEMORY_H=1 -DHAVE_UNISTD_H=1 -DHAVE_GNU_LIBC_VERSION_H=1 -DHAVE_NL_TYPES_H=1 -DHAVE_MALLOC_H=1 -DHAVE_X11_XKBLIB_H=1 -DHAVE_SYS_STATVFS_H=1 -DHAVE_SYS_STATFS_H=1 -DHAVE_SYS_VFS_H=1 -DHAVE_SYS_MOUNT_H=1 -DHAVE_MMINTRIN_H=1 -DNEW_H=\<new\> -DHAVE_SYS_CDEFS_H=1 -DHAVE_LIBM=1 -DHAVE_LIBDL=1 -DHAVE_DLADDR=1 -D_REENTRANT=1 -DHAVE_RANDOM=1 -DHAVE_STRERROR=1 -DHAVE_LCHOWN=1 -DHAVE_FCHMOD=1 -DHAVE_SNPRINTF=1 -DHAVE_STATVFS=1 -DHAVE_MEMMOVE=1 -DHAVE_RINT=1 -DHAVE_STAT64=1 -DHAVE_LSTAT64=1 -DHAVE_TRUNCATE64=1 -DHAVE_STATVFS64=1 -DHAVE_FLOCKFILE=1 -DHAVE_GETPAGESIZE=1 -DHAVE_LOCALTIME_R=1 -DHAVE_STRTOK_R=1 -DHAVE_WCRTOMB=1 -DHAVE_MBRTOWC=1 -DHAVE_RES_NINIT=1 -DHAVE_GNU_GET_LIBC_VERSION=1 -DHAVE_ICONV=1 -DVA_COPY=va_copy -DHAVE_VA_COPY=1 -DHAVE_VA_LIST_AS_ARRAY=1 -DHAVE_CPP_EXPLICIT=1 -DHAVE_CPP_TYPENAME=1 -DHAVE_CPP_MODERN_SPECIALIZE_TEMPLATE_SYNTAX=1 -DHAVE_CPP_PARTIAL_SPECIALIZATION=1 -DHAVE_CPP_ACCESS_CHANGING_USING=1 -DHAVE_CPP_AMBIGUITY_RESOLVING_USING=1 -DHAVE_CPP_NAMESPACE_STD=1 -DHAVE_CPP_UNAMBIGUOUS_STD_NOTEQUAL=1 -DHAVE_CPP_NEW_CASTS=1 -DHAVE_CPP_DYNAMIC_CAST_TO_VOID_PTR=1 -DNEED_CPP_UNUSED_IMPLEMENTATIONS=1 -DHAVE_I18N_LC_MESSAGES=1 -DSIZEOF_INT_P=8 -DMOZ_MEMORY_SIZEOF_PTR_2POW=3 -DMOZ_MEMORY=1 -DMOZ_MEMORY_LINUX=1 -DHAVE___CXA_DEMANGLE=1 -DHAVE__UNWIND_BACKTRACE=1 -DHAVE_TM_ZONE_TM_GMTOFF=1 -DCPP_THROW_NEW=throw\(\) -DMOZ_DLL_SUFFIX=\".so\" -DXP_UNIX=1 -DUNIX_ASYNC_DNS=1 -DJS_THREADSAFE=1  \
        -DBUILD_STATIC_LIBS= \
        /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/config/system-headers | /usr/bin/perl /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/config/make-system-wrappers.pl system_wrappers_js
/home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/ff-pgo/js/src/config/nsinstall -R system_wrappers_js ../../../dist/include
make[5]: Leaving directory `/home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/ff-pgo/js/src/config'
c++ -DMDCPUCFG=\"md/_linux.cfg\" -march=athlon64-sse3 -floop-interchange -floop-strip-mine -floop-block  -DOSTYPE=\"Linux2.6\" -DOSARCH=Linux -DEXPORT_JS_API  -DJS_USE_SAFE_ARENA -I/usr/include/nspr -o jscpucfg /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jscpucfg.cpp
./jscpucfg > jsautocfg.tmp
mv jsautocfg.tmp jsautocfg.h
jskwgen.cpp
c++ -DMDCPUCFG=\"md/_linux.cfg\" -o host_jskwgen.o -c -march=athlon64-sse3 -floop-interchange -floop-strip-mine -floop-block  -I/home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src -I.  -I./../../dist/include   -I./../../dist/include/js -I/usr/include/nspr -I/sdk/include -I/home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src -I/usr/include/nspr /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jskwgen.cpp
c++ -DMDCPUCFG=\"md/_linux.cfg\" -o host_jskwgen -march=athlon64-sse3 -floop-interchange -floop-strip-mine -floop-block  -I/home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src -I.  -I./../../dist/include   -I./../../dist/include/js -I/usr/include/nspr -I/sdk/include -I/home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src host_jskwgen.o  
./host_jskwgen /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/ff-pgo/js/src/jsautokw.h
/home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/ff-pgo/js/src/config/nsinstall -R -m 644 js-config.h jsautocfg.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/ff-pgo/js/src/jsautokw.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/js.msg /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsapi.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsarray.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsarena.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsatom.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsbit.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsbool.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsclist.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jscntxt.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jscompat.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsdate.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsdbgapi.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsdhash.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsdtoa.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsemit.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsfun.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsgc.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jshash.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsinterp.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsiter.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jslock.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jslong.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsmath.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsnum.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsobj.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/json.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsopcode.tbl /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsopcode.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsotypes.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsparse.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsprf.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsproto.tbl /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsprvtd.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jspubtd.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsregexp.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsscan.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsscope.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsscript.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsstaticcheck.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsstddef.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsstdint.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsstr.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jstracer.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jstypes.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsutil.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsversion.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsxdrapi.h /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsxml.h ../../dist/include/js
mkdir -p nanojit
make[4]: Leaving directory `/home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/ff-pgo/js/src'
make[3]: Leaving directory `/home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/ff-pgo'
/usr/bin/make libs_tier_js
make[3]: Entering directory `/home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/ff-pgo'
libs_tier_js
make[4]: Entering directory `/home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/ff-pgo'
make[4]: `js/src/Makefile' is up to date.
make[4]: Leaving directory `/home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/ff-pgo'
make[4]: Entering directory `/home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/ff-pgo/js/src'
jsoplengen.cpp
c++ -DMDCPUCFG=\"md/_linux.cfg\" -o host_jsoplengen.o -c -march=athlon64-sse3 -floop-interchange -floop-strip-mine -floop-block  -I/home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src -I.  -I./../../dist/include   -I./../../dist/include/js -I/usr/include/nspr -I/sdk/include -I/home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src -I/usr/include/nspr /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src/jsoplengen.cpp
c++ -DMDCPUCFG=\"md/_linux.cfg\" -o host_jsoplengen -march=athlon64-sse3 -floop-interchange -floop-strip-mine -floop-block  -I/home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src -I.  -I./../../dist/include   -I./../../dist/include/js -I/usr/include/nspr -I/sdk/include -I/home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/js/src host_jsoplengen.o  
./host_jsoplengen /home/seventy3/AUR/NEW-PGO/NEWEST-beta/3.5rc1/firefox-pgo-beta/src/mozilla-1.9.1/ff-pgo/js/src/jsautooplen.h
jsapi.cpp

Offline

#105 2009-06-17 06:51:33

methuselah
Member
Registered: 2007-10-02
Posts: 570

Re: Official firefox-pgo thread

blasse wrote:

As for C[XX]FLAGS - maybe than we should try first unset, than export? smile Most of the commonly used flags mozilla uses in sourcecode, so --enable-optimize in mozconfig will set them.

I'm still new to this so I can't even add any advice to this.... like I said I might be totally wrong.... I had always thought if my C[XX]FLAGS/LDFLAGS were shown when compiling then they were being used..... (as long as they weren't canceled out by something else.... and if they are then I don't know what that flag looks like)

blasse wrote:

btw. If you set C[XX]FLAG that is already used by mozilla code (like - Ox), the mozilla one is used smile (gcc.4.4 uses last set flag of each type. Flags defined in code are added later that our own).
ps. Is jemalloc part of you patch is working for you in 3.5rc1?

Well pgo never worked in either way using the PKGBUILD, so I'm not sure if that jemalloc part at the bottom helped.

As for the patch all I did was copy and paste the one from the bugs page because I noticed that it was mostly for the -fprofile correction like your LDFLAGS, then I just added the other parts from comment #47..... I mostly did this because of the way comment #47 had said this:

I just spent an incredible amount of time debugging a very similar error.
Here's what I learned:

    * You have to pass -fprofile-arcs -ftest-coverage when compiling.
    * You have to pass -fprofile-arcs when linking.

Like I said, it built normally but failed when I tried to build pgo. It also built for an hour and a half when I used your /_profileprofile shell script, but when I installed the completed firefox package it would not start at all and it would give me this error in the terminal: Segmentation fault "$prog" ${1+"$@"} 

blasse wrote:

btw. If you set C[XX]FLAG that is already used by mozilla code (like - Ox), the mozilla one is used smile (gcc.4.4 uses last set flag of each type. Flags defined in code are added later that our own).

This is good to know..... I had read that this was the way but I went ahead and removed -O2 and -pipe anyway cause I wasn't sure..... now I can stop doing this useless step. Thank you.

Last edited by methuselah (2009-06-17 06:56:18)

Offline

#106 2009-06-17 20:23:00

blasse
Member
From: Poland
Registered: 2008-04-24
Posts: 303

Re: Official firefox-pgo thread

methuselah wrote:

As for the patch all I did was copy and paste the one from the bugs page because I noticed that it was mostly for the -fprofile correction like your LDFLAGS, then I just added the other parts from comment #47..... I mostly did this because of the way comment #47 had said this:

I just spent an incredible amount of time debugging a very similar error.
Here's what I learned:

    * You have to pass -fprofile-arcs -ftest-coverage when compiling.
    * You have to pass -fprofile-arcs when linking.

I have added your patch to build, but I've removed jemallock part - it's already in source smile
As for CFLAGs - I'm new in it too wink I will investigate this.


Proud ex-maintainer of firefox-pgo

Offline

#107 2009-06-17 21:11:24

methuselah
Member
Registered: 2007-10-02
Posts: 570

Re: Official firefox-pgo thread

blasse wrote:

I have added your patch to build, but I've removed jemallock part - it's already in source smile
As for CFLAGs - I'm new in it too wink I will investigate this.

Cool, do you have any idea what this error message meant: Segmentation fault "$prog" ${1+"$@"}

Like I said above, when you changed the porfile.py to the /_profile shell script I was finally able to complete a pgo build that ran through twice (I had also used the ldflags2 patch)..... the only problem is that firefox would not open after I installed it, and I would get that "$prog" ${1+"$@"} Segmentation fault error in the terminal when I ran "firefox".

So I think maybe pgo could work with your shell script if we figure out what causes this: Segmentation fault "$prog" ${1+"$@"}

Last edited by methuselah (2009-06-17 21:12:48)

Offline

#108 2009-06-17 21:33:52

blasse
Member
From: Poland
Registered: 2008-04-24
Posts: 303

Re: Official firefox-pgo thread

I've got segmentation fault even without pgo. I'm trying to compile debug build to work it out. When you change mozconfig to --disable-optimize --enable-debug and run firefox with "firefox -g" command you will see backtrace of this segmentation...


Proud ex-maintainer of firefox-pgo

Offline

#109 2009-06-17 21:42:45

methuselah
Member
Registered: 2007-10-02
Posts: 570

Re: Official firefox-pgo thread

blasse wrote:

I've got segmentation fault even without pgo. I'm trying to compile debug build to work it out. When you change mozconfig to --disable-optimize --enable-debug and run firefox with "firefox -g" command you will see backtrace of this segmentation...

Thanks, I guess I'll try to build the pgo again and with this enabled. I'll get back with the results latter.

Offline

#110 2009-06-17 22:56:00

moz
Member
Registered: 2009-01-20
Posts: 17

Re: Official firefox-pgo thread

blasse wrote:

Try changing this line to:
  sed -i -e "s/${pkgname}-${pkgver}/mozilla-1.9.1/g" -e "s/mozilla-devel-${pkgver}/mozilla-devel-1.9.1/g" ${pkgdir}/usr/lib
I know it's wrong, but i cannot correct it myself hmm

That fixed it! Thanks!
I was finally able to build rc1-pgo. For those having crashes during the second pass, they might want to disable ccache during that pass. It can mess things up.
I also took the time to do a couple of benchmarks with rc1 and rc1-pgo using dromaeo and sunspider tests. Heres the results

dromaeo tests:
http://dromaeo.com/?id=68377,68366 (rc1-left, rc1-pgo-right)

sunspider tests:
RC1 - http://www2.webkit.org/perf/sunspider-0 … ,257%5D%7D 8512.4ms +/- 1.7%

RC1-PGO - http://www2.webkit.org/perf/sunspider-0 … ,225%5D%7D 7758.0ms +/- 2.6%

So both tests show an approximate 10% increase in speed using PGO on my computer which aint bad imo.

Note: I ran both tests with an empty ~/.mozilla on

% uname -a
Linux blackbox 2.6.30-zen1-MOZ #1 ZEN PREEMPT Tue Jun 16 10:43:53 CEST 2009 i686 Intel(R) Pentium(R) 4 CPU 1.70GHz GenuineIntel GNU/Linux

Offline

#111 2009-06-17 23:16:30

kazuo
Member
From: São Paulo/Brazil
Registered: 2008-03-18
Posts: 413
Website

Re: Official firefox-pgo thread

moz can you post your binaries?

Offline

#112 2009-06-18 01:41:36

pyther
Member
Registered: 2008-01-21
Posts: 1,395
Website

Re: Official firefox-pgo thread

blasse wrote:

I've got segmentation fault even without pgo. I'm trying to compile debug build to work it out. When you change mozconfig to --disable-optimize --enable-debug and run firefox with "firefox -g" command you will see backtrace of this segmentation...

I think the seg fault has something to do with the cflags that are being used. I was able to build 3.5rc1 using basic cflags, in my case: CFLAGS="-march=amdfam10 -O2 -pipe"

I posted the pkgbuild I used above, a couple days ago.


Website - Blog - arch-home
Arch User since March 2005

Offline

#113 2009-06-18 04:01:43

oddsocks
Member
Registered: 2008-12-08
Posts: 47

Re: Official firefox-pgo thread

Using the minefield pgo PKGBUILD by bond, I got 1518.4ms +/- 1.3% in my sunspider test. Is this normal? I've never seen other results, but the results from moz seems to suggest this maybe off.

Offline

#114 2009-06-18 04:51:03

xyrico
Member
Registered: 2009-06-11
Posts: 13

Re: Official firefox-pgo thread

oddsocks wrote:

Using the minefield pgo PKGBUILD by bond, I got 1518.4ms +/- 1.3% in my sunspider test. Is this normal? I've never seen other results, but the results from moz seems to suggest this maybe off.

That's a great result. My best was ~2500ms with an old build of Firefox, so scores in that range are definitely possible. What sort of hardware are you running?

Offline

#115 2009-06-18 06:24:35

oddsocks
Member
Registered: 2008-12-08
Posts: 47

Re: Official firefox-pgo thread

I've got a e5200 with 2gb of ram and geforce 9800gt with proprietary drivers. I've been doing some more searching, and it seems like this level is only found in webkit-based browsers. So I'm wondering if someone else can test this out so that I can compare, it just looks too good to be true.

Offline

#116 2009-06-18 06:37:46

seenxu
Member
Registered: 2008-08-25
Posts: 111

Re: Official firefox-pgo thread

@moz
is it a X86_64 build?

Last edited by seenxu (2009-06-18 06:37:54)

Offline

#117 2009-06-18 06:41:44

moz
Member
Registered: 2009-01-20
Posts: 17

Re: Official firefox-pgo thread

These tests are only useful to compare different browser or different versions of the same browser under the same hardware. Moreover, even having running intensive background processes can set the test off by quite a bit. Comparing tests taken on different hardware merely shows you which computer is faster but nothing more. Faster computer = lower values in sunspider. Ive got an old P4 1.7Ghz; hence those values of over 7000ms.

moz can you post your binaries?

Here's the pkg,
http://omploader.org/vMXVrdQ/firefox-pg … pkg.tar.gz

It was built with -march=pentium4, so it wont work on anything other than a pentium 4.

Offline

#118 2009-06-18 07:00:02

oddsocks
Member
Registered: 2008-12-08
Posts: 47

Re: Official firefox-pgo thread

Ahh ok that might explain everything, I'll try a sunspider test with midori-git that I compiled recently and compare the results.

Offline

#119 2009-06-18 07:19:35

blasse
Member
From: Poland
Registered: 2008-04-24
Posts: 303

Re: Official firefox-pgo thread

pyther wrote:
blasse wrote:

I've got segmentation fault even without pgo. I'm trying to compile debug build to work it out. When you change mozconfig to --disable-optimize --enable-debug and run firefox with "firefox -g" command you will see backtrace of this segmentation...

I think the seg fault has something to do with the cflags that are being used. I was able to build 3.5rc1 using basic cflags, in my case: CFLAGS="-march=amdfam10 -O2 -pipe"

I posted the pkgbuild I used above, a couple days ago.

Sadly, it's not enough. I have segmentation fault even when unsetting cflags....


Proud ex-maintainer of firefox-pgo

Offline

#120 2009-06-18 07:21:28

oddsocks
Member
Registered: 2008-12-08
Posts: 47

Re: Official firefox-pgo thread

Yeah, there is a bit of difference, but in the same pattern as many others have reported:
sunspider
midori-git(webkit) = 1172.4ms +/- 0.7%
minefield central (pgo) = 1518.4ms +/- 1.3%
firefox 3.5rc1 (vanilla) = 1867.2ms +/- 0.9%

So I guess it is only a relative measure. But still surprised to see a huge improvement between pgo builds compared to just generic packages.

Offline

#121 2009-06-18 10:55:46

pyther
Member
Registered: 2008-01-21
Posts: 1,395
Website

Re: Official firefox-pgo thread

@moz can you post you pkgbuild, mozconfig, etc... please?


Website - Blog - arch-home
Arch User since March 2005

Offline

#122 2009-06-18 15:15:41

Zariel
Member
Registered: 2008-10-07
Posts: 446

Re: Official firefox-pgo thread

Ive managed to get 3.5rc1 to build, edit the mozconfig to use xulrunner-1.9.1 and install it from aur, but add this to the end of the pkgbuild,

cd $pkgdir/usr/lib && find -iname "xulrunner-*1.9.1rc1" -delete

Then add this line to the mozconfig for firefox,

USE_SHORT_LIBNAME=1

Offline

#123 2009-06-18 17:41:35

moz
Member
Registered: 2009-01-20
Posts: 17

Re: Official firefox-pgo thread

pyther wrote:

@moz can you post you pkgbuild, mozconfig, etc... please?

I used blasse's pkgbuild and mozconfig he put a few posts above. Theres only a small modification to the pkgbuild.
Here it is again,

http://omploader.org/vMXVvMg/firefox-pgo-rc1.tar.gz

Offline

#124 2009-06-18 18:24:33

kazuo
Member
From: São Paulo/Brazil
Registered: 2008-03-18
Posts: 413
Website

Re: Official firefox-pgo thread

Update your source links a build2 of rc1 is available.

Offline

#125 2009-06-18 22:37:12

bond
Member
From: Melbourne, Australia
Registered: 2009-05-05
Posts: 62

Re: Official firefox-pgo thread

hmmm I tried updating my trunk and today I can't build anymore ...

getting this error on both 1.9.1 and Central trees:

OBJDIR=/home/bond/Desktop/firefox/src/ff-bin /home/bond/Desktop/firefox/src/profileserver.sh
/home/bond/Desktop/firefox/src/ff-bin/dist/bin/firefox-bin: symbol lookup error: /home/bond/Desktop/firefox/src/ff-bin/dist/bin/firefox-bin: undefined symbol: __gcov_indirect_call_profiler
make: *** [profiledbuild] Error 127

Offline

Board footer

Powered by FluxBB