Commit Graph

4361 Commits

Author SHA1 Message Date
Joel Dice
dec3d39d2e Merge remote-tracking branch 'origin/master' into android-upgrade 2014-09-29 11:11:06 -06:00
Joel Dice
ffb0f9b345 provide slightly more complete Thread.nativeGetStatus implementation
This fixes SimpleFramework (which depends on Thread.getState returning
Thread.State.NEW for unstarted threads) when using the Android class
library.
2014-09-29 11:08:41 -06:00
Joel Dice
3cb5f88e83 Merge pull request #341 from joshuawarner32/master
Classpath native sources to depend on vm-depends in makefile (fixes #340)
2014-09-24 14:24:02 -06:00
Joshua Warner
2b4f1bad5d make classpath native sources depend on vm-depends in makefile (fixes #340) 2014-09-24 13:15:41 -06:00
Joel Dice
b406e9c2ed Merge remote-tracking branch 'origin/master' into android-upgrade 2014-09-24 10:59:39 -06:00
Joshua Warner
15226aa3cc Merge pull request #339 from dicej/aotonly
abort if JIT triggered when AVIAN_AOT_ONLY is defined
2014-09-24 08:49:14 -06:00
Joel Dice
f347414675 abort if JIT triggered when AVIAN_AOT_ONLY is defined
If AVIAN_AOT_ONLY is defined and the VM is asked to compile a method
anyway, we should abort immediately rather than let it crash later
(e.g. due to an access violation on a non-jailbroken iPhone).  This
makes debugging such issues a bit easier since the failure will come
earlier and with a more obvious cause.
2014-09-22 16:35:53 -06:00
Joshua Warner
53491b7c38 Merge pull request #337 from dicej/master
implement JVM_isNaN
2014-09-21 18:00:36 -06:00
Joel Dice
69d9ab004a implement JVM_isNaN
This method was previously unimplemented and untested.  However, the
JMH benchmark suite requires it, so now it's time to implement it.
2014-09-21 17:31:45 -06:00
Joshua Warner
fa2ab168ce Merge pull request #336 from dicej/builtinelement-dispose
fix segfault in BuiltinElement::dispose
2014-09-15 09:33:55 -06:00
Joel Dice
ce91905b33 fix segfault in BuiltinElement::dispose
If a BuiltinElement is never used (i.e. we never try to load anything
from it), its init method will never be called, and thus its backing
library will never be loaded.  In that case, we should not try to call
library->disposeAll() in the destructor.
2014-09-15 09:03:02 -06:00
Joel Dice
1ca3e9a549 add Avian_java_lang_Thread_nativeSetName stub 2014-09-15 08:57:30 -06:00
Joshua Warner
a020105225 Merge pull request #334 from dicej/get-method-parameter-types
make Class.getMethod (and getConstructor) more strict about parameter ty...
2014-09-04 17:16:05 -06:00
Joel Dice
a81879129a add a TODO comment about class comparison 2014-09-03 16:24:15 -06:00
Joel Dice
6e209e2925 a couple of tweaks to get Mac/Android tests passing 2014-09-02 10:14:04 -06:00
Joel Dice
831c529a98 make Class.getMethod (and getConstructor) more strict about parameter types
This matches the JDK behavior.
2014-08-28 17:00:33 -06:00
Joel Dice
70d2ce429c Merge pull request #333 from sgoings/master
Add win32/win64 resolution in Gradle build
2014-08-28 16:09:45 -06:00
Seth Goings
1be50ba412 Clean up win32/64 extraction 2014-08-28 15:51:02 -06:00
Seth Goings
214cecfbc5 Merge branch 'master' of github.com:ReadyTalk/avian
* 'master' of github.com:ReadyTalk/avian:
  publish vm.pro as part of the classpath artifact
  fix gradle macosx OperatingSystem naming
  adjust gradle publish coordinates
  automagically detect java_home in gradle
  move binaryToObject to a 'tools' artifact
  change classpath artifact name to 'classpath-avian' and remove c++ sources from it

Conflicts:
	build.gradle
2014-08-28 15:34:34 -06:00
Joshua Warner
8bd28937df Merge pull request #331 from joshuawarner32/gradle-artifact-update
Gradle artifact update
2014-08-28 15:18:46 -06:00
Seth Goings
35c677ba0b Add snapshot/release repo 2014-08-28 14:58:35 -06:00
Seth Goings
c9dc5b1a9c Update wrapper to http (not https) for squeeze purposes 2014-08-28 14:48:21 -06:00
Seth Goings
72d9c8e191 Uncomment artifactoryPublish section 2014-08-28 14:41:31 -06:00
Seth Goings
4302602b63 Add win32/win64 dependencies 2014-08-28 14:25:58 -06:00
Joel Dice
58cbf5face fix Android thread enumeration 2014-08-22 16:07:44 -06:00
Joel Dice
7f4c0b3118 fix SSL stack and Android JAR resource loading 2014-08-22 07:20:19 -06:00
Joshua Warner
ea10178a55 publish vm.pro as part of the classpath artifact 2014-08-21 22:03:41 -06:00
Joshua Warner
38d67216b5 fix gradle macosx OperatingSystem naming 2014-08-21 22:00:12 -06:00
Joel Dice
b96cc3c575 update to more recent version of Android class library
Lots has changed since we forked Android's libcore, so merging the
latest upstream code has required extensive changes to the
Avian/Android port.

One big change is that we now use Avian's versions of
java.lang.Object, java.lang.Class, java.lang.ClassLoader, some
java.lang.reflect.* classes, etc. instead of the Android versions.
The main reason is that the Android versions have become very
Dex/Dalvik-specific, and since Avian is based on Java class files, not
dex archives, that code doesn't make sense here.  This has the side
benefit that we can share more native code with classpath-avian.cpp
and reduce the amount of Java/C++ code duplication.
2014-08-21 13:42:49 -06:00
Joshua Warner
d2809f2c4d adjust gradle publish coordinates 2014-08-21 11:06:56 -06:00
Joshua Warner
978f86b25c automagically detect java_home in gradle 2014-08-21 10:43:58 -06:00
Joshua Warner
282ebf9d84 move binaryToObject to a 'tools' artifact 2014-08-21 10:39:36 -06:00
Joshua Warner
4b4259be87 change classpath artifact name to 'classpath-avian' and remove c++ sources from it 2014-08-21 09:13:14 -06:00
Joshua Warner
ba808a8589 Merge pull request #330 from sgoings/master
Enable individual platform/arch builds by watching for platform/arch
2014-08-20 18:27:06 -06:00
Seth Goings
525a350853 Enable individual platform/arch builds by watching for platform/arch 2014-08-20 16:17:39 -06:00
Joshua Warner
c758da3fa5 Merge pull request #329 from dicej/atomic-flags
ensure Thread::flags is always updated atomically
2014-08-20 10:30:25 -06:00
Joel Dice
32aefaf421 ensure Thread::flags is always updated atomically
Since this field is sometimes updated from other threads, it is
essential that we always update it atomically.
2014-08-20 09:49:00 -06:00
Joshua Warner
e1074c026c Merge pull request #327 from dicej/tryNative
add avian.Machine.tryNative
2014-08-19 16:32:37 -06:00
Joel Dice
8b83de8985 add avian.Machine.tryNative
This function allows you to call native code such that any
SIGSEGV/SIGBUS/SIGFPE/EXC_ACCESS_VIOLATION/etc. raised by that code is
transformed into a Java exception and thrown by tryNative.  Note that
this effectively results in a longjmp out of whatever function raised
the exception, so any C++ destructors or other cleanup code will not
be run.
2014-08-19 14:03:46 -06:00
Joshua Warner
0c464f3f84 Merge pull request #328 from dicej/windows
Windows
2014-08-19 12:53:59 -06:00
Joel Dice
42ae8cbe39 fix openjdk-src Windows build regression 2014-08-19 11:49:18 -06:00
Joel Dice
32ef5da55a don't try to run CMake on Cygwin
We've still got some bugs to work out with CMake on Cygwin, so we
disable it for now.
2014-08-19 11:47:34 -06:00
Joshua Warner
62983ebd7a Merge pull request #326 from dicej/gc-jvmfillinstacktrace
fix GC safety bug in jvmFillInStackTrace
2014-08-19 11:06:31 -06:00
Joel Dice
f94157aa38 fix GC safety bug in jvmFillInStackTrace
This fixes spurious Trace test failures with openjdk-src build.
2014-08-19 10:14:07 -06:00
Joel Dice
acfcdf6b85 Merge pull request #325 from joshuawarner32/linux-arm-instr-cache
use prototype for __clear_cache across all linux-arm systems
2014-08-19 09:17:00 -06:00
Joel Dice
bfb96ce065 Merge pull request #323 from joshuawarner32/ci-flexibility
skip bootimage tests with 'openjdk' but no 'openjdk-src' flags
2014-08-19 09:01:48 -06:00
Joshua Warner
5210cbaa54 use prototype for __clear_cache across all linux-arm systems, not just android 2014-08-19 08:53:21 -06:00
Joshua Warner
298eb8f13b Merge pull request #324 from dicej/unused
explicitly override UNUSED definition
2014-08-18 08:09:18 -06:00
Joel Dice
5b618982b5 explicitly override UNUSED definition
Recent versions of jni.h such as the one provided by Debian Jessie's
OpenJDK define UNUSED in a way that conflicts with our definition and
usage, so we need to explicitly undefine it before redefining it to
avoid compiler noise.
2014-08-17 15:34:44 -06:00
Joshua Warner
1753eed778 skip bootimage tests with 'openjdk' but no 'openjdk-src' flags 2014-08-17 13:56:54 -06:00