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
4cb1c1c3
Commit
4cb1c1c3
authored
Nov 02, 2006
by
Keith Seitz
Committed by
Keith Seitz
Nov 02, 2006
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
* gnu/classpath/jdwp/natVMMethod.cc (getLineTable): Implement.
From-SVN: r118420
parent
08107015
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
42 additions
and
2 deletions
+42
-2
libjava/ChangeLog
+4
-0
libjava/gnu/classpath/jdwp/natVMMethod.cc
+38
-2
No files found.
libjava/ChangeLog
View file @
4cb1c1c3
2006
-
11
-
02
Keith
Seitz
<
keiths
@
redhat
.
com
>
*
gnu
/
classpath
/
jdwp
/
natVMMethod
.
cc
(
getLineTable
):
Implement
.
2006
-
11
-
02
Keith
Seitz
<
keiths
@
redhat
.
com
>
*
jvmti
.
cc
(
_Jv_JVMTI_GetLineNumberTable
):
New
function
.
(
_Jv_JVMTI_Interface
):
Define
GetLineNumberTable
.
...
...
libjava/gnu/classpath/jdwp/natVMMethod.cc
View file @
4cb1c1c3
...
...
@@ -10,8 +10,10 @@ details. */
#include <config.h>
#include <gcj/cni.h>
#include <java-interp.h>
#include <gnu/classpath/jdwp/VMMethod.h>
#include <gnu/classpath/jdwp/exception/JdwpInternalErrorException.h>
#include <gnu/classpath/jdwp/util/LineTable.h>
#include <gnu/classpath/jdwp/util/VariableTable.h>
...
...
@@ -33,10 +35,44 @@ gnu::classpath::jdwp::VMMethod::getModifiers ()
return
0
;
}
gnu
::
classpath
::
jdwp
::
util
::
LineTable
*
gnu
::
classpath
::
jdwp
::
util
::
LineTable
*
gnu
::
classpath
::
jdwp
::
VMMethod
::
getLineTable
()
{
return
NULL
;
if
(
!
_Jv_IsInterpretedClass
(
getDeclaringClass
()))
{
// this should not happen
::
java
::
lang
::
String
*
msg
=
JvNewStringLatin1
(
"native class"
);
throw
new
exception
::
JdwpInternalErrorException
(
msg
);
}
jmethodID
desired_method
=
reinterpret_cast
<
jmethodID
>
(
_methodId
);
_Jv_MethodBase
*
theMethod
=
_Jv_FindInterpreterMethod
(
getDeclaringClass
(),
desired_method
);
if
(
theMethod
==
NULL
)
{
// this should not happen
::
java
::
lang
::
String
*
msg
=
JvNewStringLatin1
(
"could not find method in class"
);
throw
new
exception
::
JdwpInternalErrorException
(
msg
);
}
if
(
::
java
::
lang
::
reflect
::
Modifier
::
isNative
(
desired_method
->
accflags
))
{
jintArray
lines
=
JvNewIntArray
(
0
);
jlongArray
indices
=
JvNewLongArray
(
0
);
return
new
util
::
LineTable
(
-
1
,
-
1
,
lines
,
indices
);
}
// get the linetable
_Jv_InterpMethod
*
imeth
=
reinterpret_cast
<
_Jv_InterpMethod
*>
(
theMethod
);
jlong
start
;
jlong
end
;
jintArray
lines
;
jlongArray
indices
;
imeth
->
get_line_table
(
start
,
end
,
lines
,
indices
);
return
new
util
::
LineTable
(
start
,
end
,
lines
,
indices
);
}
...
...
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