Joshua Warner
86d9249f29
add builtin.cpp changes
2014-07-11 13:25:20 -06:00
Joshua Warner
924f242e66
add compile.cpp changes
2014-07-11 13:25:20 -06:00
Joshua Warner
4df8f59f3c
staticly type finalizer and cleaner
2014-07-11 13:25:20 -06:00
Joshua Warner
1e201e54fc
staticly type GcContinuation*
2014-07-11 13:25:20 -06:00
Joshua Warner
b8ddc779a2
staticly type GcReference
2014-07-11 13:25:20 -06:00
Joshua Warner
bb331e9414
make callNode and methodRuntimeData.native better statically typed
2014-07-11 13:25:19 -06:00
Joshua Warner
1da8170c66
apply jnienv + java-common changes
2014-07-11 13:25:19 -06:00
Joshua Warner
9c93c5989c
apply classpath-common.h changes
2014-07-11 13:25:19 -06:00
Joshua Warner
00e2307c39
apply machine.h changes
2014-07-11 13:25:19 -06:00
Joshua Warner
9ffbd7e9fe
staticly type GcClassLoader instances
2014-07-11 13:25:19 -06:00
Joshua Warner
6a0502bbfe
add util.cpp/.h changes
2014-07-11 13:25:19 -06:00
Joshua Warner
51368651dc
better statically type Processor interface
2014-07-11 13:25:19 -06:00
Joshua Warner
0ec87c6aa1
statically type Addendum.pool better
2014-07-11 13:25:19 -06:00
Joshua Warner
9f5912c2b6
add stronger typing to method.code
2014-07-11 13:25:19 -06:00
Joshua Warner
9248f8f8ad
add stronger typing to code.singleton
2014-07-11 13:25:18 -06:00
Joshua Warner
4754a92b75
split code.stackMap out of code.pool use
2014-07-11 13:25:18 -06:00
Joshua Warner
083dc17810
add stronger typing to code.lineNumberTable
2014-07-11 13:25:18 -06:00
Joshua Warner
194e3b2701
add VMClass changes
2014-07-11 13:25:18 -06:00
Joshua Warner
9b36dca846
generate better typed accessors from type-generator (and switch to using standard library there)
2014-07-11 13:25:17 -06:00
Joshua Warner
263e349cae
rename assert to assertT, to avoid conflict with std assert macro
2014-07-11 09:32:57 -06:00
Joshua Warner
7ea4b584b8
include stdc++ <new>
2014-07-11 09:32:57 -06:00
Joshua Warner
5adb558355
add Code to classpath
2014-07-11 09:32:57 -06:00
Joshua Warner
43bd838c86
generate accessors for array fields
2014-07-11 09:32:57 -06:00
Joshua Warner
b5699cc9dc
move Machine::*Type to GcObject::*Type
2014-07-11 09:32:55 -06:00
Joshua Warner
13452beaab
use arg-parser in type-generator
2014-07-11 09:12:34 -06:00
Joshua Warner
d4d232db89
Merge pull request #288 from dicej/eiie-errors
...
only wrap Exceptions in ExceptionInInitializerErrors, not Errors
2014-07-10 14:01:05 -06:00
Joel Dice
1b83ef7eb3
only wrap Exceptions in ExceptionInInitializerErrors, not Errors
2014-07-10 13:43:10 -06:00
Joshua Warner
60df08d023
Merge pull request #283 from dicej/findclass-onload
...
fix case of JNIEnv::FindClass called from JNI_OnLoad
2014-07-01 21:39:52 -06:00
Joel Dice
5d3c612d0e
fix JNIEnv::FindClass calls from JNI_OnLoad for all supported class libraries
...
This also fixes the some Android build rot and updates the version of
OpenSSL used.
2014-07-01 10:53:26 -06:00
Joel Dice
97e2ef809c
Merge pull request #286 from joshuawarner32/allow-stress-builds
...
allow stress and stress-major as valid mode= settings in the makefile
2014-07-01 09:47:54 -06:00
Joel Dice
735eaaba21
Merge remote-tracking branch 'remotes/dicej/findclass-onload'
2014-07-01 08:39:56 -06:00
Joshua Warner
65e930f73e
use stress-major consistently in makefile
2014-07-01 08:05:12 -06:00
Joshua Warner
371e55c112
allow stress and stress-major as valid mode= settings in the makefile (note: all tests fail in both modes)
2014-06-30 13:47:19 -06:00
Joshua Warner
debd0e289a
Merge pull request #285 from dicej/warnings
...
fix unused declaration/definition warnings from GCC 4.9
2014-06-30 10:13:08 -06:00
Joel Dice
254e3f938d
fix unused declaration/definition warnings from GCC 4.9
2014-06-30 09:54:01 -06:00
Mike Jensen
5559fbe5e7
Merge pull request #284 from dicej/dump
...
only generate crash dump if faulting instruction is in main executable
2014-06-30 09:13:22 -06:00
Joel Dice
f40dcddd8d
only generate crash dump if faulting instruction is in main executable
...
The VM should only assume it should/will crash if it triggers an
e.g. EXCEPTION_ACCESS_VIOLATION itself. In other words, if some
non-VM code triggers such an event, the VM should let that code handle
it as appropriate. Avian already does this properly, but it also
generates crash dumps for each event encountered if avian.crash.dir is
set, regardless if whether the VM triggered it or not. This can be a
problem if such events are generated frequently -- a full memory dump
takes a long time to write and a lot of disk space.
Ideally, we'd have some reliable way to determine whether the faulting
instruction pointer belongs to the VM or not, but the closest thing I
could come up with was to compare the module that owns the address
with the module representing the main executable. This can lead to
both false positives (e.g. application code in the main executable
which is not part of the VM) and false negatives (e.g. when the VM is
loaded from a library instead of the main executable), but it's still
an improvement over the status quo.
Even better would be to ensure that the VM's exception handler is the
very last one to run, so that we know for sure that the error is
unrecoverable and thus it is appropriate to do a full memory dump.
2014-06-27 12:45:05 -06:00
Joel Dice
9e7d27bd15
Merge pull request #281 from joshuawarner32/darwin-platform-reorg
...
rename platform=darwin -> platform={ios,macosx}, fix ios simulator build
2014-06-24 15:49:54 -06:00
Joel Dice
4dc76a50a2
fix case of JNIEnv::FindClass called from JNI_OnLoad
...
If an JNI_OnLoad implementation calls FindClass when using the OpenJDK
class library, the calling method on the Java stack will be
ClassLoader.loadLibrary. However, we must use the class loader of the
class attempting to load the library in this case, not the system
classloader.
Therefore, we now maintain a stack such that the latest class to load
a library in the current thread is at the top, and we use that class
whenever FindClass is called by ClassLoader.loadLibrary (via
JNI_OnLoad).
Note that this patch does not attempt to address the same problem for
the Avian or Android class libraries, but the same strategy should
work for them as well.
2014-06-23 17:25:42 -06:00
Joshua Warner
2eb6746658
Merge pull request #282 from dicej/protect
...
remove redundant PROTECT usage
2014-06-23 11:30:10 -06:00
Joel Dice
9d4f9901bc
remove redundant PROTECT usage
...
This was causing crashes at GC time since we ended up visiting the
same reference twice in a single GC cycle.
2014-06-23 10:40:22 -06:00
Joshua Warner
23f4e4cc71
update README.md with darwin->{macosx,ios} rename
2014-06-23 08:19:55 -06:00
Joshua Warner
9a6f7bd0bf
rename platform=darwin -> platform={ios,macosx}, fix ios simulator build
2014-06-22 12:30:52 -06:00
Joel Dice
dbfd65a44d
Merge pull request #280 from joshuawarner32/master
...
Fix arm compiler abort
2014-06-19 08:16:14 -06:00
Joshua Warner
ada6ce4cc3
fix arm compiler abort
2014-06-11 09:55:39 -06:00
Joshua Warner
df553cbdb6
don't create '1' file from docker/build.sh
2014-06-11 09:54:48 -06:00
Joel Dice
7ec273fc70
Merge pull request #279 from bigfatbrowncat/avian-pack
...
Added Windows shell API lib for Android classpath
2014-06-09 08:42:33 -06:00
Joel Dice
68e74d1284
Merge pull request #276 from mikehearn/mavericks-fix
...
Fix makefiles for building on Mavericks
2014-06-05 13:50:41 -06:00
Joel Dice
975b1ddfd8
Merge pull request #275 from mikehearn/prop-fix
...
Set a property that the LambdaWorks SCrypt library expects to be present
2014-06-05 13:37:47 -06:00
Joshua Warner
749d1bf064
Merge pull request #278 from dicej/idleifnecessary-performance
...
only enter IdleState if necessary in idleIfNecessary
2014-06-05 08:13:12 -06:00