| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
| |
I've also removed a bunch of dead code and changed the interface to reduce the
number of JNI transitions. Error checking is more uniform, various special
cases have been removed, and we pass all the tests referenced by
libcore/luni/src/test/java/tests/regex/AllTests.java for the first time.
This should also be a stepping-stone to fixing http://b/2777924, removing the
need to copy the input string to the native heap.
Bug: 2587040
Change-Id: I62685a2384db441cd02df159e117187f3175e10d
|
|
|
|
|
|
|
|
|
|
| |
Also fix unused variable warnings in "ExpatParser.cpp".
This fixes one actual bug in the regular expression code where we weren't
returning after throwing an exception from JNI, in a case where executing
the remaining code in the native method would cause a crash.
Change-Id: Ib5ce7ea9a3b6476cf47bda2384d5ba43579c785a
|
|
|
|
| |
Change-Id: I91e79a07207bb8cc4ae1a58f9d1c28af2bb56a22
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Initially, I was just fixing a threading bug in NativeDecimalFormat.cpp where
we were bypassing GCC's built-in static initializer thread safety. This led me
to the question of how expensive FindClass is, which led me to creating a new
canonical cache of jclasses.
Here's the motivating benchmark, showing the cost of calling an empty regular
(non-native) method, an empty native method, a native method that calls
FindClass, a native method that calls FindClass and GetFieldID, and a native
method that calls FindClass and GetMethodID:
benchmark ns logarithmic runtime
NoArgsRegular 74 ||||||||||||||
NoArgsNative 428 XX|||||||||||||||||||
FindClass 3064 XXXXXXXXXXXXXXXX|||||||||||
FindClassGetField 3654 XXXXXXXXXXXXXXXXXXX|||||||||
FindClassGetMethod 5634 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Change-Id: I41ab2b347895f043a7e21d8fa19e4541e198c3fc
|
|
|
|
|
|
|
|
| |
I've left the remaining Get/Release Critical calls in "NativeConverter.cpp"
for the next patch, even though getting into position to fix them is part of
the point of this patch.
Change-Id: I99e15a3cf3919008343ae4dc856c86ced233e07a
|
|
|
|
| |
Change-Id: Ied76662c470ba878cec61189acf29f5cbbd4ccd4
|
|
Merge xml except xmlpull and kxml into luni
|