Commit Graph

3724 Commits

Author SHA1 Message Date
Joshua Warner
f1c6b97373 Reformat a few extra-long lines 2013-12-18 22:25:23 -07:00
Joshua Warner
b3d6f5d94d Remove redundancy in compiling jump operations 2013-12-18 22:20:18 -07:00
Joshua Warner
ac984775a5 Remove redundancy in compiling arithmetic operations 2013-12-18 22:03:42 -07:00
Joshua Warner
eab36b3a23 Remove boilerplate code (nullaryOp methods in Compiler) 2013-12-18 16:51:20 -07:00
Joshua Warner
bd7b66a898 Remove boilerplate code (unaryOp methods in Compiler) 2013-12-18 16:43:15 -07:00
Joshua Warner
07d0f1172f Remove boilerplate code (float binaryOp methods in Compiler) 2013-12-18 15:22:38 -07:00
Joshua Warner
d5c1a094ca Remove boilerplate code (general binaryOp methods in Compiler) 2013-12-18 15:11:30 -07:00
Joshua Warner
b66a8549fd Remove boilerplate code (jump* methods in Compiler) 2013-12-18 14:38:05 -07:00
Joshua Warner
fd5bd9d77e Merge pull request #139 from dicej/master
don't throw UnknownHostException from InetAddress.getByName("0.0.0.0")
2013-12-18 11:07:11 -08:00
Joel Dice
fc38f596f1 fix header include order build regression 2013-12-18 11:40:23 -07:00
Joel Dice
38477c113c fix iOS 7 build using latest Xcode
It looks like the iOS 7 SDK doesn't have GCC anymore, so we need to
use clang instead.  Also, thread_act.h and thread_status.h have moved,
so I updated arm.h accordingly.  That might break the build for older
SDKs, but I don't have one available at the moment.  If it does break,
I'll fix it.
2013-12-18 11:10:04 -07:00
Joel Dice
15906ddb12 fix build regression on platforms with no native 64-bit CAS
Unsafe.compareAndSwapLong was moved from classpath-openjdk.cpp to
builtin.cpp, but the fieldForOffset helper function was not, which
only caused problems when I tried to build for ARM.  This commit moves
said helper function, along with Unsafe.getVolatileLong, which also
uses it.
2013-12-18 11:06:15 -07:00
Joel Dice
59d5bbbb1a throw UnknownHostException if host is not found in InetAddress.getByName 2013-12-18 10:43:11 -07:00
Joel Dice
5f40c1642e don't throw UnknownHostException from InetAddress.getByName("0.0.0.0")
0.0.0.0 means any local interface, which is commonly used by servers
which wish to listen on all interfaces.
2013-12-18 10:12:10 -07:00
Joel Dice
dae1f81d27 Merge pull request #138 from soc/topic/unsafe-compareAndSwap
Move Unsafe.compareAndSwapLong from classpath-openjdk.cpp to builtin.cpp
2013-12-18 08:35:01 -08:00
Simon Ochsenreither
55e9923ee6 Move Unsafe.compareAndSwapLong from ...
... classpath-openjdk.cpp to builtin.cpp.
2013-12-18 05:19:45 +01:00
Joel Dice
10d15d23fb Merge pull request #135 from joshuawarner32/no-busy-block
make sure a busy-waiting loop can't block the GC and hence the whole VM
2013-12-13 16:35:20 -08:00
Joshua Warner
0645b0e4cf prevent busywait loops from blocking the VM in interpret mode 2013-12-13 11:48:26 -07:00
Joshua Warner
0340be23ce make sure a busy-waiting loop can't block the GC (and hence the whole VM) 2013-12-13 10:39:36 -07:00
Joel Dice
cc2e27a879 Merge pull request #133 from joshuawarner32/consolidate-lists
consolidate many implicit list types into one
2013-12-11 11:43:43 -08:00
Joshua Warner
06432253ba consolidate many implicit list types into one 2013-12-11 10:54:50 -07:00
Joel Dice
2cb606babd Merge pull request #132 from joshuawarner32/master
fix java 1.6 compatibility, and make sure it's maintained in the future
2013-12-11 09:20:03 -08:00
Joshua Warner
ef82c4a03a Fix extra java 1.6 failures... that only happen with -source 1.6. Go figure. 2013-12-11 08:51:00 -07:00
Joshua Warner
d2c3d771d7 fix java 1.6 compatibility, and make sure it's maintained in the future 2013-12-10 20:26:29 -07:00
Joel Dice
19274ee3d6 Merge pull request #129 from joshuawarner32/openjdk-osx10.9-build-fix
Openjdk osx10.9 build fix
2013-12-07 19:42:08 -08:00
Joel Dice
8c3f3b268a Merge pull request #130 from joshuawarner32/openjdk-files-compat
fix FileInputStream for newer openjdk7 versions
2013-12-07 18:52:51 -08:00
Joshua Warner
94f5888f97 prevent openjdk-src build from trying to load the installed 'JavaRuntimeSupport' (fixes #128) 2013-12-07 18:49:23 -07:00
Joshua Warner
773417ab2b fix openjdk-src build failures on osx 10.9 2013-12-07 16:43:18 -07:00
Joshua Warner
9a899a2e4a fix FileInputStream for newer openjdk7 versions 2013-12-07 16:22:08 -07:00
Joel Dice
a7469164fe Merge pull request #126 from joshuawarner32/master
Use 0777/0666 permissions when creating dirs/files.
2013-12-07 10:55:14 -08:00
Joshua Warner
1dc932618f Use 0777/0666 permissions when creating dirs/files.
Just like openjdk, we now depend on the processes umask (0022, for
instance) to mask that into 0755 or 0666, for instance.

This fixes #57.
2013-12-06 22:22:16 -07:00
Joshua Warner
1f1d5095b8 Merge pull request #125 from dicej/master
use portable conditional expression in test.sh
2013-12-06 20:30:18 -08:00
Joel Dice
e50ee5152a use portable conditional expression in test.sh
[[ expression ]] is bash-specific, so we use [ expression ] instead.
2013-12-06 20:57:26 -07:00
Joel Dice
afc3c64e37 Merge pull request #121 from joshuawarner32/master
add jdk-test target, and fix failures
2013-12-06 18:50:45 -08:00
Joshua Warner
db2a701cf5 Merge pull request #122 from dicej/master
fix various Android test suite regressions and add more reflection tests
2013-12-06 18:40:39 -08:00
Joshua Warner
0a4eff33b2 fix jdk-test failures 2013-12-06 19:30:04 -07:00
Joel Dice
7056315c18 fix various Android test suite regressions and add more reflection tests
Most of these regressions were simply due to testing a lot more stuff,
esp. annotations and reflection, revealing holes in the Android
compatibility code.  There are still some holes, but at least the
suite is passing (except for a fragile test in Serialize.java which I
will open an issue for).

Sorry this is such a big commit; there was more to address than I
initially expected.
2013-12-06 18:48:47 -07:00
Joel Dice
2279a13f91 Merge pull request #124 from dscho/serialize-test
Do not test java.util.TreeMap's serialization in the Serialize test
2013-12-06 17:44:44 -08:00
Johannes Schindelin
ddd057c53a Do not test java.util.TreeMap's serialization in the Serialize test
In the Android class path, TreeMap is implemented differently and as a
consequence its serialization is incompatible with OpenJDK's. So let's
test a private static class' serialization instead, to make sure that
the wire protocol defined by the Java Language Specification is
implemented.

This addresses issue #123 reported by Joel Dice.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2013-12-06 19:24:41 -06:00
Joshua Warner
47a7732a81 add jdk-test target, and fix failures
The intent of this target is to run our test suite against the installed jre.
This should help prevent our VM from diverging in implementation from the jdk.

The remainder of this commit fixes the problems that this exposes.
2013-12-06 15:00:02 -07:00
Joshua Warner
39e3850ed8 Merge pull request #120 from dscho/look-behind-test
Fix the look-behind test for OpenJDK
2013-12-06 12:19:43 -08:00
Johannes Schindelin
d8d980be9a Fix the look-behind test for OpenJDK
OpenJDK's regex engine can only handle look-behinds of limited sizes.
So let's just test for that, not the unbounded one we had before (that
our own regex engine handles quite fine, though).

This fixes issue #115.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
2013-12-06 10:50:34 -06:00
Joshua Warner
d17bbc6d1b Merge pull request #118 from dicej/master
fix exception wrapping for Method.invoke and static initializers
2013-12-06 07:13:41 -08:00
Joel Dice
abe8bc6fda fix exception wrapping for Method.invoke and static initializers
Method.invoke should initialize its class before invoking the method,
throwing an ExceptionInInitializerError if it fails, without wrapping
said error in an InvocationTargetException.

Also, we must initialize ExceptionInInitializerError.exception when
throwing instances from the VM, since OpenJDK's
ExceptionInInitializerError.getCause uses the exception field, not the
cause field.
2013-12-05 22:28:13 -07:00
Joel Dice
451fe159c2 Merge pull request #116 from joshuawarner32/master
implement sun.misc.Unsafe.throwException
2013-12-05 20:10:53 -08:00
Joshua Warner
8cda2446d5 implement sun.misc.Unsafe.throwException 2013-12-05 20:28:08 -07:00
Joshua Warner
f7ce0c4207 Merge pull request #114 from dicej/treeset-descending-iterator
modify TreeSet.MyIterator to support both ascending and descending itera...
2013-12-05 09:27:10 -08:00
Joel Dice
2000c139ea modify TreeSet.MyIterator to support both ascending and descending iteration
This also fixes a bug such that the remove() method left the iterator
in an inconsistent state.
2013-12-04 17:52:27 -07:00
Joshua Warner
bb18637f13 Merge pull request #110 from dscho/memory
Implement Runtime#{free,total}Memory()
2013-12-04 13:43:45 -08:00
Joshua Warner
136bc0e40b Merge pull request #111 from dscho/filechannel-size
Add FileChannel#size()
2013-12-04 13:36:07 -08:00