Commit Graph

2772 Commits

Author SHA1 Message Date
Joel Dice
1c2f516b68 Merge remote-tracking branch 'origin/master' into jdk7
Conflicts:
	src/classpath-openjdk.cpp
2012-03-11 15:30:38 -06:00
Joel Dice
6cc0ddda7c implement JVM_HoldsLock 2012-03-11 05:06:08 -06:00
Joel Dice
04a34a75ed implement sun.misc.Unsafe.monitorEnter and monitorExit 2012-03-11 05:05:14 -06:00
Joel Dice
3e38628ad6 check superclasses in fieldForOffset, not just immediate class 2012-03-11 05:04:12 -06:00
Joel Dice
8590695f2d constrain exception handler bounds to bytecode length
Scala occasionally generates exception handler tables with interval
bounds which fall outside the range of valid bytecode indexes, so we
must clamp them or risk out-of-bounds array accesses.
2012-03-11 05:00:08 -06:00
Joel Dice
71295e54c7 handle constants larger than 8 bits in subtractBorrowCR 2012-03-11 04:59:42 -06:00
Joel Dice
6c9a1e1643 add "throws IOException" to java.io.File.createTempFile 2012-03-11 04:57:22 -06:00
Joel Dice
443097f3bc add support for Xcode 4.3 2012-03-07 08:55:01 -07:00
Joel Dice
e8e3c9066f implement sun.misc.Unsafe raw memory access methods
The primitive get/put methods are implemented as intrinsics by the
compiler for performance.
2012-03-06 13:07:59 -07:00
Joel Dice
44277db2de fix handling of exceptions thrown from interpreter during method invocation
Since we use Thread::code to store a reference to either the method to
be invoked or the current bytecode being executed depending on the
context, we must be careful to switch it back to the bytecode of the
exception handler if an exception is thrown while invoking a method
(e.g. an UnsatisfiedLinkError).
2012-03-06 13:03:42 -07:00
Joel Dice
0f97089e22 Merge remote branch 'oss/master' into jdk7 2012-03-05 13:19:38 -07:00
Joel Dice
ac63d08450 fix bootimage field offset calculation for derived classes
There was a subtle bug in that we were not considering alignment
padding for fields defined in superclasses when calculating field
offsets for a derived class when the superclass(es) were visited by
the bootimage generator before the derived class.
2012-03-04 11:38:12 -07:00
Joel Dice
1d77b06540 fix recent throwNew/makeThrowable regression
6fceca9 introduced a string formatting regression in these methods,
which this commit fixes.
2012-03-03 18:37:27 -07:00
Joel Dice
87032ca8a8 Merge remote-tracking branch 'git/master' 2012-03-02 16:33:50 -07:00
Matt Weaver
a7157199f3 armv7 is actually 9 2012-03-02 16:06:22 -07:00
Matt Weaver
6a20d0289c switching to armv7 2012-03-02 16:00:08 -07:00
Joel Dice
336a0d198b Merge remote branch 'oss/master' into jdk7 2012-02-29 11:53:18 -07:00
Joel Dice
5203cb5dcf implement JNI methods NewWeakGlobalRef and DeleteWeakGlobalRef 2012-02-29 11:51:30 -07:00
Joel Dice
e044303ac1 Merge branch 'master' into jdk7 2012-02-29 11:50:08 -07:00
Joel Dice
6fceca940f fix makeByteArray and makeString for strings longer than 256 characters 2012-02-29 11:49:13 -07:00
Joel Dice
0be7318637 minor whitespace change 2012-02-29 11:48:06 -07:00
Joel Dice
c3b72a3dd5 set sun.boot.class.path property in jvmInitProperties 2012-02-29 11:46:50 -07:00
Joel Dice
7740005c11 Merge remote branch 'oss/master' into jdk7 2012-02-29 08:35:35 -07:00
Joel Dice
5a5d2a8dd2 fix JNI float argument passing
Floats are implicitly promoted to doubles when passed as part of a
variable-length argument list, so we can't treat them the same way as
32-bit integers.
2012-02-28 15:35:28 -07:00
Joel Dice
a61c1aba60 Merge remote branch 'oss/master' into jdk7 2012-02-27 18:19:22 -07:00
Joel Dice
c6ac66e45a fix bug in isAssignableFrom such that primitive array types were considered to be subclasses of the Object array type 2012-02-27 18:16:01 -07:00
Joel Dice
b5fda8ee13 use avian.http.Handler for http(s) URLs, not avian.file.Handler 2012-02-27 13:38:47 -07:00
Joel Dice
574a8ea1e2 Merge branch 'master' into prv-ga-merge 2012-02-27 13:28:06 -07:00
Joel Dice
d09eb3c671 Merge remote branch 'oss/master' 2012-02-22 10:08:14 -07:00
Joel Dice
747f22115f handle JMM_THREAD_ALLOCATED_MEMORY in JMX GetBoolAttribute implementation 2012-02-21 17:33:51 -07:00
Joel Dice
d94fd952e9 fix some OpenJDK update regressions 2012-02-20 17:38:41 -07:00
Joel Dice
3111f07430 add "throws IOException" to java.io.File.createTempFile 2012-02-20 17:23:18 -07:00
Seth Goings
e849d8f9c9 Updates to .gitignore to get rid of any possibility of checking in binaries in lib/distrib directories, and generalized method of setting location of win32 and win64 libs. 2012-02-20 16:25:37 -07:00
Joel Dice
f63d4584c2 Merge remote branch 'oss/master' into jdk7 2012-02-20 11:08:58 -07:00
Joel Dice
bc5661d6f3 start work on OpenJDK 7 class library port 2012-02-18 15:17:10 -07:00
Joel Dice
750e5f903c include leading slash in path when parsing URLs in URLStreamHandler
This matches the behavior of OpenJDK's version.
2012-02-18 15:14:16 -07:00
Joel Dice
999e90c332 fix MSVC build 2012-02-16 18:22:11 -07:00
Joel Dice
c5ef39f2bd implement File.getAbsoluteFile for Windows 2012-02-16 18:19:01 -07:00
Dain
84185f0884 Merge remote branch 'origin/http_url' into prv-ga-merge 2012-02-16 11:08:53 -07:00
Joel Dice
9fe2d69b06 improve seed generation in java.util.Random
The previous code caused frequent seed collisions for successive calls
to the no-arg constructor, even for single threaded workloads.  This
patch should avoid such collisions in both single and multi-threaded
cases.
2012-02-14 15:17:07 -07:00
Joel Dice
a254d20e0e improve seed generation in java.util.Random
The previous code caused frequent seed collisions for successive calls
to the no-arg constructor, even for single threaded workloads.  This
patch should avoid such collisions in both single and multi-threaded
cases.
2012-02-14 13:03:13 -07:00
Dain
c323bc86b5 Merge branch 'http_url' into oss-master 2012-02-14 10:54:04 -07:00
Joshua Warner
a1c5cccd96 undo accidental modification of makefile 2012-02-13 10:04:13 -07:00
Joshua Warner
bbb4529752 implement File.setExecutable(), File.canExecute(), and File.createTempFile() 2012-02-09 14:23:24 -07:00
Joshua Warner
edc768f837 implement File.setExecutable(), File.canExecute(), and File.createTempFile() 2012-02-09 14:04:42 -07:00
Joel Dice
33976d1ba4 ensure debug helper functions are retained by linker
Apple's linker tends to remove functions which are never called, which
is not what we want for e.g. vmPrintTrace, since that function is only
intended to be called interactively from within GDB.
2012-02-04 15:42:19 -07:00
Joel Dice
be6896b8a0 avoid running out of OS resources due to zombie thread accumulation (part 2)
My previous attempt wasn't quite sufficient, since it was too late to
call join on a thread which had already exited given the code was
written to aggressively dispose of system handles as soon as the
thread exited.  The solution is to delay disposing these handles until
after we're able to join the thread.
2012-02-03 17:20:20 -07:00
Joel Dice
67a3ca881b remove debug logging 2012-02-03 13:54:00 -07:00
Joel Dice
c3256c2874 avoid running out of OS resources due to zombie thread accumulation
The bug here is that when a thread exits and becomes a "zombie", the
OS resources associated with it are not necessarily released until we
actually join and dispose of that thread.  Since that only happens
during garbage collection, and collection normally only happens in
response to heap memory pressure, there's no guarantee that we'll GC
frequently enough to clean up zombies promptly and avoid running out
of resources.

The solution is to force a GC whenever we start a new thread and there
are at least N zombies waiting to be disposed, where N=16 for now.
2012-02-03 12:00:02 -07:00
Joel Dice
b45528203d avoid crashes due to calling select or wakeup on a closed Selector 2012-01-31 09:48:05 -07:00