Issue 1446 in v8: V8 build errors, and Date() faulty

2 views
Skip to first unread message

codesite...@google.com

unread,
Jun 10, 2011, 1:11:49 AM6/10/11
to v8-...@googlegroups.com
Status: New
Owner: ----

New issue 1446 by HairyOne42: V8 build errors, and Date() faulty
http://code.google.com/p/v8/issues/detail?id=1446

I'm running NodeJS 4.8
on a limited box, using
cat /proc/cpuinfo
Processor : ARM926EJ-Sid(wb) rev 0 (v5l)
BogoMIPS : 331.77
Features : swp half thumb fastmult edsp java
CPU implementer : 0x41
CPU architecture: 5TEJ
CPU variant : 0x0
CPU part : 0x926
CPU revision : 0
Cache type : write-back
Cache clean : cp15 c7 ops
Cache lockdown : format C
Cache format : Harvard
I size : 32768
I assoc : 1
I line length : 32
I sets : 1024
D size : 32768
D assoc : 1
D line length : 32
D sets : 1024

Hardware : MV-88fxx81
Revision : 0000
Serial : 0000000000000000
______________
my routine is simply :
new Date();
result:
Fri undefined NaN NaN 17:05.299808824e-315:21 GMT+1200 (GMT)

in calling node I used:
node --noenable-vfp3 --enable_armv7 (name of routine)

in doing a --log-all, it includes the following:
api,Date::New
code-creation,LazyCompile,0x42592340,224,"CreateDate native
apinatives.js:33",0x4235f99c,
code-creation,LazyCompile,0x42592420,448,"setTime native
date.js:771",0x4236e63c,
api,Date::New
code-creation,LoadIC,0x425925e0,84,"$Date"
code-creation,LoadIC,0x425925e0,84,"$Date"
code-creation,CallIC,0x42592640,152,"setTime"
code-creation,CallIC,0x425926e0,116,"ToNumber"
code-creation,CallIC,0x42592760,116,"TimeClip"
code-creation,CallIC,0x425927e0,116,"$isFinite"
code-creation,LoadIC,0x42592860,84,"$NaN"
code-creation,LoadIC,0x42592860,84,"$NaN"
api,Date::New
api,CloseHandleScope

Thats about it for the date part ( I have no idea what else to do !!)

I did get problems at compile time (during install of NodeJS)
nodejs - no errors, but
during compile of V8 part - resulted in about 8 errors in different places
- always 'illegal instruction'.
Ran 'Make' again and it went on to the next error (untill the end)
everything else appears to be working, except the date()
even new Date(2011,6,5,4,3,2) comes up as 'Invalid Date'.

I'm running a DNS323, with ffp ( a debian minimal build)
an OLD compiler gcc 4.1.3,
can't think what else I need to say or add!!

HELP

codesite...@google.com

unread,
Jul 9, 2011, 8:21:11 AM7/9/11
to v8-...@googlegroups.com

Comment #1 on issue 1446 by jeff%jam...@gtempaccount.com: V8 build errors,

I have a similar problem with Date() running on a Arm v5 platform
(SheevaPlug). The first call to Date() seems to work okay, but the second
call returns something undefined. Were you able to resolve your issue?

Here's the simplest way to produce my issue:

root@debian:~# node
> console.log(Date());
Sat Jul 09 2011 05:17:44 GMT-0700 (PDT)
> console.log(Date());
undefined Jul 09 2011 07.19506e-317:60:51 GMT-0700 (PDT)


codesite...@google.com

unread,
Jul 18, 2011, 10:30:49 PM7/18/11
to v8-...@googlegroups.com

Comment #2 on issue 1446 by HairyOne42: V8 build errors, and Date() faulty
http://code.google.com/p/v8/issues/detail?id=1446

It appears that the compiler I'm using with the type of CPU, craps out!!
the problem was first noticed about October last year and was fixed in
early March 2011.
However, the latest build of NodeJS has picked up their version of V8 9
days before the fix was applied!!!!!!! (buggar, buggar, buggar)
so hopefully the next NodeJS will have a later version of V8.
(4.9 and 5 have the same V8 - as a matter of interest)
I want to develop my software on my target (the DNS323), however - now that
I know what the problem is, and that it will (EVENTUALLY) be fixed. I have
set up a new portable (brought new - therefore clean) machine with Debian
and am developing on that ( only in JS anyway - so, easy to transport)
Hope this answers your questions.
btw. the fault on mine appeared to be with parseInt, but showed up
instantly by date!! even new Date()........
good luck

codesite...@google.com

unread,
Dec 19, 2011, 8:39:05 PM12/19/11
to v8-...@googlegroups.com

Comment #3 on issue 1446 by HairyOne42: V8 build errors, and Date() faulty
http://code.google.com/p/v8/issues/detail?id=1446

DNS320, Fonzplug, NodeJS, Funplug, (DNS323, my original target) also
appears to apply to sheeva plug!!
(as a matter of interest 323 takes about 7.5 hours to compile, whilst 320
takes 1hr, 3 minutes!!)
(also compile on 1G8 Intel Linux (Debian) takes about 15 minutes)
========================
NOTE: on fonz plug - you need the following installed:

binutils
kernel-headers
uclibc
gcc
make
gettext
patch
bison
flex
autoconf
automake
=======================
then you can:

exported TMPDIR=/ffp/tmp (need this to put tmp files on HD not memory!)

export CC='gcc -march=armv5te -mfloat-abi=soft -fno-tree-sink -O0'
export CCFLAGS='-march=armv5te -mfloat-abi=soft -fno-tree-sink -O0'
export CXX='g++ -march=armv5te -mfloat-abi=soft -fno-tree-sink -O0'
export GCC='-march=armv5te -mfloat-abi=soft -fno-tree-sink -O0'

./configure --prefix=/ffp --without-snapshot
......
make
.............
make install

----------------------------
Notes:
----------------------------
I have had experience with NodeJS 0.4.9 - so I have kept using it - read on
as to why!!

actually compiles without error!!
BUT!
when run - Illegal instruction - pops up
------
this appears to be because V8 is EXPECTED to be compiled on a host machine
that is NOT an arm!!
see below for references I've found: (It has taken me 6 months to find all
these)
Someone, somewhere has decided that running on ARM is an embedded
environment, therefore you won't ever compile on it!!
Can someone with authority fix this!!!!!!!!
The fact that I can get a clean compile, says it can work, but at least V8
doesn't want us too????
original instructions:
https://github.com/joyent/node/wiki/Installation

What else I have found:
http://code.google.com/p/v8/wiki/CrossCompilingForARM

http://code.google.com/p/v8/issues/detail?id=1632&q=vfp%20off&colspec=ID%20Type%20Status%20Priority%20Owner%20Summary%20HW%20OS%20Area%20Stars
https://github.com/joyent/node/issues/1566
http://fastr.github.com/articles/Node.js-on-OpenEmbedded.html

http://freebsd.1045724.n5.nabble.com/problems-with-cvsup-on-FreeBSD-9-snapshot-201101-td4491053.html
http://code.google.com/p/v8/issues/detail?id=1446

http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dai0133c/index.html
http://infocenter.arm.com/help/topic/com.arm.doc.qrc0007e/QRC0007_VFP.pdf

and from this article, the minimum installs of fonz stuff that needs to be
pre-installed:

http://www.shadowandy.net/2008/08/adding-compiling-capabilities-to-your-dns-323.htm

DNS323 - wiki site (new one??!!)
http://dns323.kood.org/dns-320


compiler options:
http://gcc.gnu.org/onlinedocs/gcc/ARM-Options.html

debugging options:
http://gcc.gnu.org/onlinedocs/gcc/Debugging-Options.html

Interest:
http://itrs.tw/wiki/Code_Sourcery_G%2B%2B_Lite

-------
why 0.4.9, and not 0.6.6?
6.6 may be crapping out in same place but error says EABI error, compiler
with Fonz doesn't understand EABI.

But I think error is same - in 4.9 the error says 'illegal instruction',

I think the V8 guys (or node guys) have relabelled the error descriptor to
EABI, I don't know enough to trace problem.
There are heaps of other switches available for the comilers - I have given
up trying them all (other people seem to have found the same problem, they
are MUCH

more knowledgable than I am, so I am going to assume that they have tried
all the available switches that could make a difference).

As a matter of interest the V8 compile only uses the CXXFLAGS switch to
compile with, whilst the rest of NodeJS seems to use the others I have
labelled!!
-----
Also note that in order to get snapshot running it points to /tmp - no
matter what I do, -
I ended up moving /tmp to /tmp1, and ln -s /tmp /ffp/tmp
ie
mv /tmp /tmp1
ln -s /tmp /ffp/tmp
------

codesite...@google.com

unread,
Aug 9, 2012, 6:20:11 PM8/9/12
to v8-...@googlegroups.com

codesite...@google.com

unread,
Aug 9, 2012, 6:23:03 PM8/9/12
to v8-...@googlegroups.com

Comment #5 on issue 1446 by m...@warheads.net: V8 build errors, and Date()

codesite...@google.com

unread,
Aug 9, 2012, 8:14:29 PM8/9/12
to v8-...@googlegroups.com

Comment #6 on issue 1446 by HairyOne42: V8 build errors, and Date() faulty
http://code.google.com/p/v8/issues/detail?id=1446

I'll be home in the next few days
I'll give this a try - wasn't aware it existed
Thanks

codesite...@google.com

unread,
Feb 5, 2015, 7:32:07 AM2/5/15
to v8-...@googlegroups.com
Updates:
Status: WorkingAsIntended

Comment #7 on issue 1446 by habl...@chromium.org: V8 build errors, and
Date() faulty
https://code.google.com/p/v8/issues/detail?id=1446

Update done during clean-up of issue tracker.

Please note that ARM6+VFP2 is the minimum requirement to successfully
compile V8. If the problem still persists on this platform feel free to
open the issue again.

--
You received this message because this project is configured to send all
issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings
Reply all
Reply to author
Forward
0 new messages