Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
R
riscv-gcc-1
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
lvzhengyang
riscv-gcc-1
Commits
415791db
Commit
415791db
authored
Dec 12, 2001
by
Tom Tromey
Committed by
Tom Tromey
Dec 12, 2001
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
* jni.cc (call): Synchronize if required.
From-SVN: r47949
parent
242f4945
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
16 additions
and
0 deletions
+16
-0
libjava/ChangeLog
+2
-0
libjava/jni.cc
+14
-0
No files found.
libjava/ChangeLog
View file @
415791db
2001-12-12 Tom Tromey <tromey@redhat.com>
2001-12-12 Tom Tromey <tromey@redhat.com>
* jni.cc (call): Synchronize if required.
* gij.cc (main): Clarify --help output.
* gij.cc (main): Clarify --help output.
* gnu/gcj/runtime/StringBuffer.java
* gnu/gcj/runtime/StringBuffer.java
...
...
libjava/jni.cc
View file @
415791db
...
@@ -2066,6 +2066,17 @@ _Jv_JNIMethod::call (ffi_cif *, void *ret, ffi_raw *args, void *__this)
...
@@ -2066,6 +2066,17 @@ _Jv_JNIMethod::call (ffi_cif *, void *ret, ffi_raw *args, void *__this)
if
((
_this
->
self
->
accflags
&
java
::
lang
::
reflect
::
Modifier
::
STATIC
))
if
((
_this
->
self
->
accflags
&
java
::
lang
::
reflect
::
Modifier
::
STATIC
))
real_args
[
offset
++
].
ptr
=
_this
->
defining_class
;
real_args
[
offset
++
].
ptr
=
_this
->
defining_class
;
// In libgcj, the callee synchronizes.
jobject
sync
=
NULL
;
if
((
_this
->
self
->
accflags
&
java
::
lang
::
reflect
::
Modifier
::
SYNCHRONIZED
))
{
if
((
_this
->
self
->
accflags
&
java
::
lang
::
reflect
::
Modifier
::
STATIC
))
sync
=
_this
->
defining_class
;
else
sync
=
(
jobject
)
args
[
0
].
ptr
;
_Jv_MonitorEnter
(
sync
);
}
// Copy over passed-in arguments.
// Copy over passed-in arguments.
memcpy
(
&
real_args
[
offset
],
args
,
_this
->
args_raw_size
);
memcpy
(
&
real_args
[
offset
],
args
,
_this
->
args_raw_size
);
...
@@ -2073,6 +2084,9 @@ _Jv_JNIMethod::call (ffi_cif *, void *ret, ffi_raw *args, void *__this)
...
@@ -2073,6 +2084,9 @@ _Jv_JNIMethod::call (ffi_cif *, void *ret, ffi_raw *args, void *__this)
ffi_raw_call
(
&
_this
->
jni_cif
,
(
void
(
*
)())
_this
->
function
,
ffi_raw_call
(
&
_this
->
jni_cif
,
(
void
(
*
)())
_this
->
function
,
ret
,
real_args
);
ret
,
real_args
);
if
(
sync
!=
NULL
)
_Jv_MonitorExit
(
sync
);
_Jv_JNI_PopSystemFrame
(
env
);
_Jv_JNI_PopSystemFrame
(
env
);
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment