Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 434452 - [4.5/ICE] www-client/firefox-15.0.1 - .../work/mozilla-release/js/src/vm/ObjectImpl.cpp:485:1: internal compiler error: in merge_if_block, at ifcvt.c:3005
Summary: [4.5/ICE] www-client/firefox-15.0.1 - .../work/mozilla-release/js/src/vm/Obje...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: ARM Linux
: Normal normal (vote)
Assignee: Gentoo Toolchain Maintainers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-09-09 13:29 UTC by John L. Poole
Modified: 2017-08-12 20:16 UTC (History)
4 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log (build.log,266.16 KB, text/plain)
2012-09-09 13:34 UTC, John L. Poole
Details
environment (environment,265.75 KB, text/plain)
2012-09-09 13:35 UTC, John L. Poole
Details
emerge-info (emerge-info.txt,4.08 KB, text/plain)
2012-09-09 13:35 UTC, John L. Poole
Details
ObjectImpl requested per comment #9 (ObjectImpl.pp.zip,1.89 KB, application/zip)
2012-09-10 20:37 UTC, John L. Poole
Details
stefan's ObjectImpl.ii, gzipped (ObjectImpl.ii.gz,270.04 KB, application/x-gzip)
2012-09-12 11:02 UTC, Stefan Sassenberg
Details
raspberry pi emerge info firefox 16.0.1 (emergeinfo.txt,4.22 KB, text/plain)
2012-10-30 18:13 UTC, Nathan
Details
Raspberry pi Build.log firefox 16.0.1 (build.log,303.30 KB, text/plain)
2012-10-30 18:15 UTC, Nathan
Details

Note You need to log in before you can comment on or make changes to this bug.
Description John L. Poole 2012-09-09 13:29:55 UTC
On a BeagleBone (ARM Cortex-A8), emerge www-client/firefox fails:
 * ERROR: www-client/firefox-15.0.1 failed (compile phase):
 *   emake failed
 *
 * Call stack:
 *     ebuild.sh, line  85:  Called src_compile
 *   environment, line 6824:  Called die
 * The specific snippet of code:
 *           CC="$(tc-getCC)" CXX="$(tc-getCXX)" LD="$(tc-getLD)" MOZ_MAKE_FLAGS="${MAKEOPTS}" emake -f client.mk || die "emake failed";
 *

BACKGROUND re: BeagleBone
The BeagleBone is Texas Instrument's prototype board utilizing their AM3359.  http://beagleboard.org/bone  This board was built following the http://dev.gentoo.org/~armin76/arm/beaglebone/install.xml  The current kernel, uImage, is built from the Gentoo Install guide's recommended source: git://arago-project.org/git/projects/linux-am33x.git  However, I also have been running the instance on an Ångström kernel, simply switching the uImage on the /boot partition.

Requested attachments to follow with the next few minutes.
Comment 1 John L. Poole 2012-09-09 13:34:22 UTC
bone ~ # emerge -pqv '=www-client/firefox-15.0.1'
[ebuild  N    ] www-client/firefox-15.0.1  USE="dbus ipc jit minimal (-alsa) -bindist -custom-cflags -custom-optimization -debug -gstreamer -libnotify -pgo (-selinux) -startup-notification -system-sqlite (-webm) -wifi" LINGUAS="-af -ak -ar -as -ast -be -bg -bn_BD -bn_IN -br -bs -ca -cs -csb -cy -da -de -el -en_GB -en_ZA -eo -es_AR -es_CL -es_ES -es_MX -et -eu -fa -fi -fr -fy_NL -ga_IE -gd -gl -gu_IN -he -hi_IN -hr -hu -hy_AM -id -is -it -ja -kk -km -kn -ko -ku -lg -lt -lv -mai -mk -ml -mr -nb_NO -nl -nn_NO -nso -or -pa_IN -pl -pt_BR -pt_PT -rm -ro -ru -si -sk -sl -son -sq -sr -sv_SE -ta -ta_LK -te -th -tr -uk -vi -zh_CN -zh_TW -zu"

 * IMPORTANT: 3 news items need reading for repository 'gentoo'.
 * Use eselect news to read news items.

bone ~ #
Comment 2 John L. Poole 2012-09-09 13:34:54 UTC
Created attachment 323300 [details]
build.log
Comment 3 John L. Poole 2012-09-09 13:35:11 UTC
Created attachment 323302 [details]
environment
Comment 4 John L. Poole 2012-09-09 13:35:27 UTC
Created attachment 323304 [details]
emerge-info
Comment 5 John L. Poole 2012-09-09 17:22:06 UTC
This bug may be moot as https://developer.mozilla.org/en-US/docs/Developer_Guide/Build_Instructions/Windows_Prerequisites?redirectlocale=en-US&redirectslug=Windows_Build_Prerequisites instructs that the Hardware requirements for a compile on Windows is:

at least 2 GB RAM

The BeagleBone has only 256 MB of RAM.

However, I have also built Firefox on the SheevaPlug which only has 512 MB RAM -- it takes a long time, but it does compile.

I'm raising this issue in case memory limitations may be at play, but then there probably would be some sort of error message identifying "memory" as an issue unlike the one at issue in this bug.
Comment 6 Stefan Sassenberg 2012-09-10 09:14:46 UTC
I have exactly the same error message on my system. Parts of emerge --info:

Portage 2.1.11.9 (default/linux/arm/10.0/desktop, gcc-4.5.4, glibc-2.15-r2, 3.5.0-2-ARCH+ armv7l)
=================================================================
System uname: Linux-3.5.0-2-ARCH+-armv7l-ARMv7_Processor_rev_5_-v7l-with-gentoo-2.1
...
CBUILD="armv7a-hardfloat-linux-gnueabi"
CFLAGS="-O2 -pipe -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard"
CHOST="armv7a-hardfloat-linux-gnueabi"
...
CXXFLAGS="-O2 -pipe -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard"

It's a Cubox running an up-to-date kernel from ArchLinux. It doesn't seem to have used much of the available memory as top now says
Mem:    701656k total,   465580k used,   236076k free,   100312k buffers
Swap:   999996k total,     1016k used,   998980k free,   220760k cached
Comment 7 SpanKY gentoo-dev 2012-09-10 15:28:45 UTC
does it fail at the same place every time ?

if you remove the -pipe flag, does it work better ?
Comment 8 John L. Poole 2012-09-10 19:35:20 UTC
The previous fault point was:
/var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-release/js/src/vm/ObjectImpl.cpp:485:1: internal compiler error: in merge_if_block, at ifcvt.c:3005

I tried Mark's suggestion and modified my /etc/make.conf as follows:

  #CFLAGS="-O2 -pipe -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=softfp"  
  # 
  # Bug 434452 suggestion by Vapier to remove "-pipe" for firefox 
  #
  CFLAGS="-O2 -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=softfp"




After a 48 minute compile time, it errored out with which is the same fault point previously submitted:

/var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-release/js/src/vm/ObjectImpl.cpp: In member function 'bool js::ArrayBufferElementsHeader::defineElement(JSContext*, js::ObjectImpl*, uint32_t, const js::PropDesc&, bool, bool*)':
/var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-release/js/src/vm/ObjectImpl.cpp:485:1: internal compiler error: in merge_if_block, at ifcvt.c:3005

Therefore, it appears removing "-pipe" flag has no effect and the fault point remains the same.
Comment 9 SpanKY gentoo-dev 2012-09-10 19:42:49 UTC
(In reply to comment #8)

run this:
cd /var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-release/obj-armv7l-unknown-linux-gnueabi/js/src

armv7a-softfp-linux-gnueabi-g++ -o ObjectImpl.ii -E -dD -fvisibility=hidden \
 -DMOZ_GLUE_IN_PROGRAM -DEXPORT_JS_API -DJS_HAS_CTYPES -DDLL_PREFIX=\"lib\" \
 -DDLL_SUFFIX=\".so\" -DNO_NSPR_10_SUPPORT -I/usr/lib/libffi-3.0.11/include \
 -I. -I/var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-\
release/js/src/../../mfbt/double-conversion \
 -I/var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-release/js/src \
 -I. -I./../../dist/include -I./../../dist/include/nsprpub \
 -I/usr/include/nspr  \
 -I/var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-release/js/src \
 -I/var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-\
release/js/src/assembler
 -I/var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-release/js/src/yarr \
 -fPIC -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 \
 -march=armv7-a -mfpu=vfpv3-d16 -ffunction-sections -fdata-sections -pthread \
 -pipe  -DNDEBUG -DTRIMMED -g -O3 -freorder-blocks -finline-limit=50 \
 -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 \
 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h \
 /var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-\
release/js/src/vm/ObjectImpl.cpp

then compress the ObjectImpl.ii file and attach it here
Comment 10 John L. Poole 2012-09-10 19:46:36 UTC
it's not finding the compiler you specified.

bone src # pwd
/var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-release/obj-armv7l-unknown-linux-gnueabi/js/src
bone src # armv7a-softfp-linux-gnueabi-g++ -o ObjectImpl.ii -E -dD -fvisibility=hidden \  -DMOZ_GLUE_IN_PROGRAM -DEXPORT_JS_API -DJS_HAS_CTYPES -DDLL_PREFIX=\"lib\" \  -DDLL_SUFFIX=\".so\" -DNO_NSPR_10_SUPPORT -I/usr/lib/libffi-3.0.11/include \  -I. -I/var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-\ release/js/src/../../mfbt/double-conversion \  -I/var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-release/js/src \  -I. -I./../../dist/include -I./../../dist/include/nsprpub \  -I/usr/include/nspr  \  -I/var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-release/js/src \  -I/var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-\ release/js/src/assembler  -I/var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-release/js/src/yarr \  -fPIC -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 \  -march=armv7-a -mfpu=vfpv3-d16 -ffunction-sections -fdata-sections -pthread \  -pipe  -DNDEBUG -DTRIMMED -g -O3 -freorder-blocks -finline-limit=50 \  -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 \  -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h \  /var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-\ release/js/src/vm/ObjectImpl.cpp
armv7a-softfp-linux-gnueabi-g++:  : No such file or directory
armv7a-softfp-linux-gnueabi-g++:  : No such file or directory
armv7a-softfp-linux-gnueabi-g++:  : No such file or directory
armv7a-softfp-linux-gnueabi-g++:  : No such file or directory
armv7a-softfp-linux-gnueabi-g++:  : No such file or directory
armv7a-softfp-linux-gnueabi-g++:  : No such file or directory
armv7a-softfp-linux-gnueabi-g++:  : No such file or directory
armv7a-softfp-linux-gnueabi-g++:  : No such file or directory
armv7a-softfp-linux-gnueabi-g++:  : No such file or directory
armv7a-softfp-linux-gnueabi-g++:  : No such file or directory
armv7a-softfp-linux-gnueabi-g++:  : No such file or directory
armv7a-softfp-linux-gnueabi-g++:  : No such file or directory
armv7a-softfp-linux-gnueabi-g++:  : No such file or directory
armv7a-softfp-linux-gnueabi-g++:  : No such file or directory
armv7a-softfp-linux-gnueabi-g++:  : No such file or directory
armv7a-softfp-linux-gnueabi-g++:  : No such file or directory
armv7a-softfp-linux-gnueabi-g++: /var/tmp/portage/www-client/firefox-15.0.1/work/mozilla- release/js/src/vm/ObjectImpl.cpp: No such file or directory
armv7a-softfp-linux-gnueabi-g++: no input files
bone src #
Comment 11 John L. Poole 2012-09-10 19:48:23 UTC
I made a mistake: the compiler is there, just the files it is expecting were not found.

bone src # armv7a-softfp-linux-gnueabi-g++
armv7a-softfp-linux-gnueabi-g++: no input files
bone src #
Comment 12 SpanKY gentoo-dev 2012-09-10 19:50:37 UTC
you didn't copy & paste it correctly.  look at the last command run in the build.log and change the -c to -E if you want to do it yourself.
Comment 13 John L. Poole 2012-09-10 20:19:30 UTC
(In reply to comment #12)
> you didn't copy & paste it correctly.  look at the last command run in the
> build.log and change the -c to -E if you want to do it yourself.

I copied from the Bug Ticket, but it looks like my Windows paste buffer picked up some carriage return and/or line feeds.  So I pasted into NotePad++ and used the linealize tool from XML Tools to create a single line and then I pasted into my console.  Any changes that occurred outside of those actions were not of my doing.

I opened the build.log in NotePad++, found the last line, and modified "-c " to "-E " and then pasted into the console:

I verified that the line pasted into the console was indeed, a single line, by copying it back into NotePad++ and seeing it all on one line.

Here's the run with the modification:

bone src # armv7a-softfp-linux-gnueabi-g++ -o ObjectImpl.o -E  -fvisibility=hidden -DMOZ_GLUE_IN_PROGRAM -DEXPORT_JS_API -DJS_HAS_CTYPES -DDLL_PREFIX=\"lib\" -DDLL_SUFFIX=\".so\" -DNO_NSPR_10_SUPPORT -I/usr/lib/libffi-3.0.11/include   -I.  -I/var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-release/js/src/../../mfbt/double-conversion -I/var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-release/js/src -I. -I./../../dist/include -I./../../dist/include/nsprpub  -I/usr/include/nspr  -I/var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-release/js/src -I/var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-release/js/src/assembler -I/var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-release/js/src/yarr  -fPIC  -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 -pipe -march=armv7-a -mfpu=vfpv3-d16 -ffunction-sections -fdata-sections -pthread -pipe  -DNDEBUG -DTRIMMED -g -O3 -freorder-blocks -finline-limit=50 -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/ObjectImpl.pp
armv7a-softfp-linux-gnueabi-g++: no input files
bone src # pwd
/var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-release/obj-armv7l-unknown-linux-gnueabi/js/src
bone src #

The problem appears to be a missing file:

bone firefox-15.0.1 # pwd
/var/tmp/portage/www-client/firefox-15.0.1
bone firefox-15.0.1 # find . -name "ObjectImpl.pp"
bone firefox-15.0.1 # find . -name "ObjectImp*"
./work/mozilla-release/js/src/vm/ObjectImpl.h
./work/mozilla-release/js/src/vm/ObjectImpl-inl.h
./work/mozilla-release/js/src/vm/ObjectImpl.cpp
bone firefox-15.0.1 #

Does this help?
Comment 14 SpanKY gentoo-dev 2012-09-10 20:24:57 UTC
(In reply to comment #13)

you didn't copy the entire line from build.log.  you missed the source file (which as the end).
Comment 15 John L. Poole 2012-09-10 20:37:07 UTC
Created attachment 323452 [details]
ObjectImpl requested per comment #9

(In reply to comment #14)
> (In reply to comment #13)
> 
> you didn't copy the entire line from build.log.  you missed the source file
> (which as the end).

You're right.  It worked now.  You specified ""ObjectImpl.ii" which I'm guessing was a typo, ii => pp.

bone firefox-15.0.1 # find . -name "ObjectImpl.ii"
bone firefox-15.0.1 # find . -name "ObjectImpl.pp"
./work/mozilla-release/obj-armv7l-unknown-linux-gnueabi/js/src/.deps/ObjectImpl.pp
bone firefox-15.0.1 # ls -la ./work/mozilla-release/obj-armv7l-unknown-linux-gnueabi/js/src/.deps/ObjectImpl.pp
-rw-r--r-- 1 root root 18182 Sep 10 13:27 ./work/mozilla-release/obj-armv7l-unknown-linux-gnueabi/js/src/.deps/ObjectImpl.pp
bone firefox-15.0.1 #
Comment 16 SpanKY gentoo-dev 2012-09-10 21:07:42 UTC
Comment on attachment 323452 [details]
ObjectImpl requested per comment #9

nope, i meant ".ii".  not a big deal as i can rename locally.
Comment 17 SpanKY gentoo-dev 2012-09-12 04:24:41 UTC
Comment on attachment 323452 [details]
ObjectImpl requested per comment #9

this is actually the dependency file, not the preprocessed output file that i need to reproduce with
Comment 18 John L. Poole 2012-09-12 09:31:10 UTC
I was going to point out the difference, but your Comment #16 suggested you had what you needed.

So, back to what you need:  ObjectImpl.ii

My Comment #15 shows that the file does not exist within the tree under /var/tmp/portage/www-client/firefox-15.0.1

Here's the search, again, for clarity:

   bone ~ # cd /var/tmp/portage/www-client/firefox-15.0.1
   bone firefox-15.0.1 # find . -name "ObjectImpl.ii"
   bone firefox-15.0.1 #

You requested I run a particular command, which I do so again below and show that immediately thereafter the file you are expecting, ObjectImpl.ii, is not created:

	bone firefox-15.0.1 # cd /var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-release/obj-armv7l-unknown-linux-gnueabi/js/src
	bone src #  armv7a-softfp-linux-gnueabi-g++ -o ObjectImpl.o -E  -fvisibility=hidden -DMOZ_GLUE_IN_PROGRAM -DEXPORT_JS_API -DJS_HAS_CTYPES -DDLL_PREFIX=\"lib\" -DDLL_SUFFIX=\".so\" -DNO_NSPR_10_SUPPORT -I/usr/lib/libffi-3.0.11/include   -I.  -I/var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-release/js/src/../../mfbt/double-conversion -I/var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-release/js/src -I. -I./../../dist/include -I./../../dist/include/nsprpub  -I/usr/include/nspr  -I/var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-release/js/src -I/var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-release/js/src/assembler -I/var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-release/js/src/yarr  -fPIC  -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 -pipe -march=armv7-a -mfpu=vfpv3-d16 -ffunction-sections -fdata-sections -pthread -pipe  -DNDEBUG -DTRIMMED -g -O3 -freorder-blocks -finline-limit=50 -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/ObjectImpl.pp /var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-release/js/src/vm/ObjectImpl.cpp
	bone src # cd /var/tmp/portage/www-client/firefox-15.0.1                        
	bone firefox-15.0.1 # find . -name "ObjectImpl.ii"                              
	bone firefox-15.0.1 #

The g++ command executed without any output.

Is there any other command or search I may perform?
Comment 19 Stefan Sassenberg 2012-09-12 11:01:07 UTC
John, the trouble with the command you executed is in the first line. You did "-o ObjectImpl.o" where it should be "-o ObjectImpl.ii". Since -o determines the output file name, you don't find the resulting file.

Meanwhile I did the same on my machine (with armv7a-hardfloat-linux-gnueabi-g++) to get my version of ObjectImpl.ii. I will add it as attachment. If you think my file is misplaced here because it's mot my bug, please tell me and will shut up until asked otherwise. The coincidence in error messages just makes me think that my ObjectImpl.ii might be helpful for John as well.
Comment 20 Stefan Sassenberg 2012-09-12 11:02:09 UTC
Created attachment 323592 [details]
stefan's ObjectImpl.ii, gzipped
Comment 21 John L. Poole 2012-09-12 18:38:05 UTC
Thanks Stefan.  The BeagleBone is not available to me until late tonight.  I can upload same after then if he indicates he needs it.
Comment 22 SpanKY gentoo-dev 2012-09-13 20:04:14 UTC
(In reply to comment #20)

thanks, i can reproduce with this and -O2
Comment 23 SpanKY gentoo-dev 2012-09-14 00:28:36 UTC
4.6.3 seems to work fine and that's in ~arch now.  i think we'll just wait for that to stabilize rather than backporting anything.

funny enough, the ICE only seems to hit at -O2 :).  so you could try using -O3 or -O1 in the mean time.
Comment 24 John L. Poole 2012-09-14 03:36:58 UTC
I tried the suggest chage of the "O" flag referencing http://www.gentoo.org/doc/en/gcc-optimization.xml

The problem (at line 485 in ObjectImpl.cpp) continues:

CFLAGS="-O1 -pipe -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=softfp"
produced:
/var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-release/js/src/vm/ObjectImpl.cpp: In member function 'bool js::ArrayBufferElementsHeader::defineElement(JSContext*, js::ObjectImpl*, uint32_t, const js::PropDesc&, bool, bool*)':
/var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-release/js/src/vm/ObjectImpl.cpp:485:1: internal compiler error: in merge_if_block, at ifcvt.c:3005
=================
CFLAGS="-O3 -pipe -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=softfp"
produced
/var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-release/js/src/vm/ObjectImpl.cpp: In member function 'bool js::ArrayBufferElementsHeader::defineElement(JSContext*, js::ObjectImpl*, uint32_t, const js::PropDesc&, bool, bool*)':
/var/tmp/portage/www-client/firefox-15.0.1/work/mozilla-release/js/src/vm/ObjectImpl.cpp:485:1: internal compiler error: in merge_if_block, at ifcvt.c:3005
Comment 25 SpanKY gentoo-dev 2012-09-14 04:17:59 UTC
(In reply to comment #24)

regardless, it's already fixed in 4.6.x.  if there's a simple fix from upstream for the issue we can look at merging, but we're not going to track it down otherwise.
Comment 26 John L. Poole 2012-09-14 06:16:21 UTC
So I tried to emerge sys-devel/gcc having specified:

bone ~ # head /etc/portage/package.keywords
=sys-devel/gcc-4.6.0

I guess the only way to get firefox is to set up a cross compiler and try distcc.
What's interesting about the BeagleBone is that I did not run into these types of problems with the SheevaPlug (I could build GCC on the Plug, it only took over 24 hours to compile).  The BeagleBone's limited memory (256k) may be the culprit, I don't know.  I'm adding this comment for posterity in case others trying out the BeagleBone & Gentoo run into this type of problem.

Thanks for trying Mark [vapier].
Comment 27 John L. Poole 2012-09-14 06:17:32 UTC
yes... the attempt to compile gcc failed.  This statement should be have been included in comment #26.
Comment 28 Stefan Sassenberg 2012-09-19 09:24:15 UTC
gcc-4.6.3 works. I am successful with binutils 2.22.90, firefox-15.0.1 and a 4 GB swapfile.
Comment 29 John L. Poole 2012-09-19 15:28:28 UTC
Stefan - Can you share what you did to configure you system's swap file?  I've not tinkered with swap files before (at least I do not remember).  I had tried compiling several versions of gcc 4.6.0 and greater and met with failure.  I'd like to try 4.6.3 and duplicate your success.
Comment 30 Stefan Sassenberg 2012-09-19 15:32:50 UTC
Sure.
dd if=/dev/zero of=/swap bs=1000000 count=4000
mkswap /swap
swapon /swap
It will take a few minutes.
Comment 31 John L. Poole 2012-09-21 01:58:42 UTC
Thank you, Stefan; that was a big help.  I successfully compiled gcc 4.6.2 -- it took 8-13 hours.  I then added the sys-devel/binutils-2.22.90 and that successfully installed (took 77 minutes). I proceeded to firefox and after 278 minutes, it failed: "nsMediaDecoder.h: No such file or directory".

Question: whoever is monitoring this bug (Spanky?), should I open a new bug (since the failure was for a different reason) or add the desired files to this one?  I think one might conclude that the problems I encountered when opening this bug were related to GCC per Spanky's earlier analysis.  The problem I now face looks to be a missing dependency so a different bug may be appropriate.

Note, at the beginning of the firefox compile, there was this:
   Checking for at least 4 gibibytes disk space at "/var/tmp/portage/www-client/firefox-15.0.1/temp" .

I'm wondering if the 4 GB swap specified by Stefan is because of this, though I'd think swap and Firefox's determination of free disk space would be unrelated.  I'm also wondering if there is a way to monitor the usage of swap to see if something less than 4 GBs works.
Comment 32 Stefan Sassenberg 2012-09-21 09:25:44 UTC
A new bug would be the right choice, but it would be a dup. Do this: https://bugs.gentoo.org/show_bug.cgi?id=433930
Comment 33 Nathan 2012-10-30 18:13:49 UTC
Created attachment 327812 [details]
raspberry pi emerge info firefox 16.0.1
Comment 34 Nathan 2012-10-30 18:15:14 UTC
Created attachment 327814 [details]
Raspberry pi Build.log firefox 16.0.1
Comment 35 Nathan 2012-10-30 18:18:36 UTC
I was building Firefox 16.0.1 on a raspberry pi, and I cam across this bug.  I have one newer version than shown here but the rest appears to be very similar.  Its a 256M ARM device, I have a 6G swap file on an SSD drive.  I use a crosscompiler, and the same ObjectImpl.cpp failed there as well.  Both use GCC 4.5.4.  Took many hours to build GCC on the Pi, but I will attempt to update that tonight if needed.

Attached are the raspberry pi emerge info and build logs.
Comment 36 Andreas K. Hüttel gentoo-dev 2017-08-12 20:16:43 UTC
(In reply to Stefan Sassenberg from comment #28)
> gcc-4.6.3 works. I am successful with binutils 2.22.90, firefox-15.0.1 and a
> 4 GB swapfile.