The following tables describe implementation status for JVMTI features specific for different platforms and VM execution modes.

For the description of JVMTI features (capabilities, events, functions) see JVMTI spec on

http://java.sun.com/j2se/1.5.0/docs/guide/jvmti/jvmti.html

Notes:

JET - means Jitrino/JET JIT mode

OPT - Jitrino/OPT

+ - means that the feature is implemented for corresponding platform and mode.

Capabilities

Name

 

Windows / Linux IA32

 

 

Windows / Linux x86_64

 

 

Linux IA64

Interpreter

JET

OPT

Interpreter

JET

OPT

Interpreter

JIT

1

can_tag_objects

+

+

+

+

+

+

+

+

2

can_generate_field_modification_events

+

+

 

+

 

 

+

 

3

can_generate_field_access_events

+

+

 

+

 

 

+

 

4

can_get_bytecodes

+

+

+

+

+

+

+

+

5

can_get_synthetic_attribute

+

+

+

+

+

+

+

+

6

can_get_owned_monitor_info

+

+

+

+

+

+

+

+

7

can_get_current_contended_monitor

+

+

+

+

+

+

+

+

8

can_get_monitor_info

+

+

+

+

+

+

+

+

9

can_pop_frame

+

+

 

+

 

 

+

 

10

can_redefine_classes

 

 

 

 

 

 

 

 

11

can_signal_thread

+

+

+

+

+

+

+

+

12

can_get_source_file_name

+

+

+

+

+

+

+

+

13

can_get_line_numbers

+

+

+

+

+

+

+

+

14

can_get_source_debug_extension

+

+

+

+

+

+

+

+

15

can_access_local_variables

+

+

 

+

 

 

+

 

16

can_maintain_original_method_order

 

 

 

 

 

 

 

 

17

can_generate_single_step_events

+

+

 

+

 

 

+

 

18

can_generate_exception_events

+

+

+

+

+

+

+

+

19

can_generate_frame_pop_events

+

+

 

+

 

 

+

 

20

can_generate_breakpoint_events

+

+

 

+

 

 

+

 

21

can_suspend

+

+

+

+

+

+

+

+

22

can_redefine_any_class

 

 

 

 

 

 

 

 

23

can_get_current_thread_cpu_time

+

+

+

+

+

+

+

+

24

can_get_thread_cpu_time

+

+

+

+

+

+

+

+

25

can_generate_method_entry_events

+

+

 

+

 

 

+

 

26

can_generate_method_exit_events

+

+

 

+

 

 

+

 

27

can_generate_all_class_hook_events

+

+

+

+

+

+

+

+

28

can_generate_compiled_method_load_events

+

+

+

+

+

+

+

+

29

can_generate_monitor_events

+

+

 

+

+

 

+

 

30

can_generate_vm_object_alloc_events

+

+

+

+

+

+

+

+

31

can_generate_native_method_bind_events

+

+

+

+

+

+

+

+

32

can_generate_garbage_collection_events

+

+

+

+

+

+

+

+

33

can_generate_object_free_events

+

+

+

+

+

+

+

+

Events

Name

 

Windows / Linux IA32

 

 

Windows / Linux x86_64

 

 

Linux IA64

Interpreter

JET

OPT

Interpreter

JET

OPT

Interpreter

JIT

1

Breakpoint

+

+

 

+

 

 

+

 

2

Class File Load Hook

+

+

+

+

+

+

+

+

3

Class Load

+

+

+

+

+

+

+

+

4

Class Prepare

+

+

+

+

+

+

+

+

5

Compiled Method Load

+

+

+

+

+

+

+

+

6

Compiled Method Unload

 

 

 

 

 

 

 

 

7

Data Dump Request

+

+

+

+

+

+

+

+

8

Dynamic Code Generated

+

+

+

+

+

+

+

+

9

Exception

+

+

+

+

+

+

+

+

10

Exception Catch

+

+

+

+

+

+

+

+

11

Field Access

+

+

 

+

 

 

+

 

12

Field Modification

+

+

 

+

 

 

+

 

13

Frame Pop

+

+

 

+

 

 

+

 

14

Garbage Collection Finished

+

+

+

+

+

+

+

+

15

Garbage Collection Start

+

+

+

+

+

+

+

+

16

Method Entry

+

+

 

+

 

 

+

 

17

Method Exit

+

+

 

+

 

 

+

 

18

Monitor Contended Enter

+

+

 

+

+

 

+

 

19

Monitor Contended Entered

+

+

 

+

+

 

+

 

20

Monitor Wait

+

+

 

+

+

 

+

 

21

Monitor Waited

+

+

 

+

+

 

+

 

22

Native Method Bind

+

+

+

+

+

+

+

+

23

Object Free

+

+

+

+

+

+

+

+

24

Single Step

+

+

 

+

 

 

+

 

25

Thread End

+

+

+

+

+

+

+

+

26

Thread Start

+

+

+

+

+

+

+

+

27

VM Death Event

+

+

+

+

+

+

+

+

28

VM Initialization Event

+

+

+

+

+

+

+

+

29

VM Object Allocation

+

+

+

+

+

+

+

+

30

VM Start Event

+

+

+

+

+

+

+

+

Functions

Name

 

Windows / Linux IA32

 

 

Windows / Linux x86_64

 

 

Linux IA64

Interpreter

JET

OPT

Interpreter

JET

OPT

Interpreter

JIT

 

Memory Management

 

 

 

 

 

 

 

 

1

Allocate

+

+

+

+

+

+

+

+

2

Deallocate

+

+

+

+

+

+

+

+

 

Thread

 

 

 

 

 

 

 

 

3

GetThreadState

+

+

+

+

+

+

+

+

4

GetAllThreads

+

+

+

+

+

+

+

+

5

SuspendThread

+

+

+

+

+

+

+

+

6

SuspendThreadList

+

+

+

+

+

+

+

+

7

ResumeThread

+

+

+

+

+

+

+

+

8

ResumeThreadList

+

+

+

+

+

+

+

+

9

StopThread

+

+

+

+

+

+

+

+

10

InterruptThread

+

+

+

+

+

+

+

+

11

GetThreadInfo

+

+

+

+

+

+

+

+

12

GetOwnedMonitorInfo

+

+

+

+

+

+

+

+

13

GetCurrentContendedMonitor

+

+

+

+

+

+

+

+

14

RunAgentThread

+

+

+

+

+

+

+

+

15

SetThreadLocalStorage

+

+

+

+

+

+

+

+

16

GetThreadLocalStorage

+

+

+

+

+

+

+

+

 

Thread Group

 

 

 

 

 

 

 

 

17

GetTopThreadGroups

+

+

+

+

+

+

+

+

18

GetThreadGroupInfo

+

+

+

+

+

+

+

+

19

GetThreadGroupChildren

+

+

+

+

+

+

+

+

 

Stack Frame

 

 

 

 

 

 

 

 

20

GetStackTrace

+

+

 

+

 

 

+

 

21

GetAllStackTraces

+

+

 

+

 

 

+

 

22

GetThreadListStackTraces

+

+

 

+

 

 

+

 

23

GetFrameCount

+

+

 

+

 

 

+

 

24

PopFrame

+

+

 

+

 

 

+

 

25

GetFrameLocation

+

+

 

+

 

 

+

 

26

NotifyFramePop

+

+

 

+

 

 

+

 

 

Heap

 

 

 

 

 

 

 

 

27

GetTag

+

+

+

+

+

+

+

+

28

SetTag

+

+

+

+

+

+

+

+

29

ForceGarbageCollection

+

+

+

+

+

+

+

+

30

IterateOverObjectsReachableFromObject

+

+

+

+

+

+

+

+

31

IterateOverReachableObjects

+

+

+

+

+

+

+

+

32

IterateOverHeap

+

+

+

+

+

+

+

+

33

IterateOverInstancesOfClass

+

+

+

+

+

+

+

+

34

GetObjectsWithTags

+

+

+

+

+

+

+

+

 

Local Variable

 

 

 

 

 

 

 

 

35

GetLocalObject

+

+

 

+

 

 

+

 

36

GetLocalInt

+

+

 

+

 

 

+

 

37

GetLocalLong

+

+

 

+

 

 

+

 

38

GetLocalFloat

+

+

 

+

 

 

+

 

39

GetLocalDouble

+

+

 

+

 

 

+

 

40

SetLocalObject

+

+

 

+

 

 

+

 

41

SetLocalInt

+

+

 

+

 

 

+

 

42

SetLocalLong

+

+

 

+

 

 

+

 

43

SetLocalFloat

+

+

 

+

 

 

+

 

44

SetLocalDouble

+

+

 

+

 

 

+

 

 

Breakpoints

 

 

 

 

 

 

 

 

45

SetBreakpoint

+

+

 

+

 

 

+

 

46

ClearBreakpoint

+

+

 

+

 

 

+

 

 

Watched Field

 

 

 

 

 

 

 

 

47

SetFieldAccessWatch

+

+

 

+

 

 

+

 

48

ClearFieldAccessWatch

+

+

 

+

 

 

+

 

49

SetFieldModificationWatch

+

+

 

+

 

 

+

 

50

ClearFieldModificationWatch

+

+

 

+

 

 

+

 

 

Class

 

 

 

 

 

 

 

 

51

GetLoadedClasses

+

+

+

+

+

+

+

+

52

GetClassLoaderClasses

+

+

+

+

+

+

+

+

53

GetClassSignature

+

+

+

+

+

+

+

+

54

GetClassStatus

+

+

+

+

+

+

+

+

55

GetSourceFileName

+

+

+

+

+

+

+

+

56

GetClassModifiers

+

+

+

+

+

+

+

+

57

GetClassMethods

+

+

+

+

+

+

+

+

58

GetClassFields

+

+

+

+

+

+

+

+

59

GetImplementedInterfaces

+

+

+

+

+

+

+

+

60

IsInterface

+

+

+

+

+

+

+

+

61

IsArrayClass

+

+

+

+

+

+

+

+

62

GetClassLoader

+

+

+

+

+

+

+

+

63

GetSourceDebugExtension

+

+

+

+

+

+

+

+

64

RedefineClasses

 

 

 

 

 

 

 

 

 

Object

 

 

 

 

 

 

 

 

65

GetObjectSize

+

+

+

+

+

+

+

+

66

GetObjectHashCode

+

+

+

+

+

+

+

+

67

GetObjectMonitorUsage

+

+

+

+

+

+

+

+

 

Field

 

 

 

 

 

 

 

 

68

GetFieldName

+

+

+

+

+

+

+

+

69

GetFieldDeclaringClass

+

+

+

+

+

+

+

+

70

GetFieldModifiers

+

+

+

+

+

+

+

+

71

IsFieldSynthetic

+

+

+

+

+

+

+

+

 

Method

 

 

 

 

 

 

 

 

72

GetMethodName

+

+

+

+

+

+

+

+

73

GetMethodDeclaringClass

+

+

+

+

+

+

+

+

74

GetMethodModifiers

+

+

+

+

+

+

+

+

75

GetMaxLocals

+

+

+

+

+

+

+

+

76

GetArgumentsSize

+

+

+

+

+

+

+

+

77

GetLineNumberTable

+

+

+

+

+

+

+

+

78

GetMethodLocation

+

+

+

+

+

+

+

+

79

GetLocalVariableTable

+

+

+

+

+

+

+

+

80

GetBytecodes

+

+

+

+

+

+

+

+

81

IsMethodNative

+

+

+

+

+

+

+

+

82

IsMethodSynthetic

+

+

+

+

+

+

+

+

83

IsMethodObsolete

+

+

 

+

 

 

+

 

 

Raw Monitor

 

 

 

 

 

 

 

 

84

CreateRawMonitor

+

+

+

+

+

+

+

+

85

DestroyRawMonitor

+

+

+

+

+

+

+

+

86

RawMonitorEnter

+

+

+

+

+

+

+

+

87

RawMonitorExit

+

+

+

+

+

+

+

+

88

RawMonitorWait

+

+

+

+

+

+

+

+

89

RawMonitorNotify

+

+

+

+

+

+

+

+

90

RawMonitorNotifyAll

+

+

+

+

+

+

+

+

 

JNI Function Interception

 

 

 

 

 

 

 

 

91

SetJNIFunctionTable

+

+

+

+

+

+

+

+

92

GetJNIFunctionTable

+

+

+

+

+

+

+

+

 

Event Management

 

 

 

 

 

 

 

 

93

SetEventCallbacks

+

+

+

+

+

+

+

+

94

SetEventNotificationMode

+

+

+

+

+

+

+

+

95

GenerateEvents

+

+

+

+

+

+

+

+

 

Extension Mechanism

 

 

 

 

 

 

 

 

96

GetExtensionFunctions

+

+

+

+

+

+

+

+

97

GetExtensionEvents

+

+

+

+

+

+

+

+

98

SetExtensionEventCallback

+

+

+

+

+

+

+

+

 

Capabilities

 

 

 

 

 

 

 

 

99

GetPotentialCapabilities

+

+

+

+

+

+

+

+

100

AddCapabilities

+

+

+

+

+

+

+

+

101

RelinquishCapabilities

+

+

+

+

+

+

+

+

102

GetCapabilities

+

+

+

+

+

+

+

+

 

Timer

 

 

 

 

 

 

 

 

103

GetCurrentThreadCpuTimerInfo

+

+

+

+

+

+

+

+

104

GetCurrentThreadCpuTime

+

+

+

+

+

+

+

+

105

GetThreadCpuTimerInfo

+

+

+

+

+

+

+

+

106

GetThreadCpuTime

+

+

+

+

+

+

+

+

107

GetTimerInfo

+

+

+

+

+

+

+

+

108

GetTime

+

+

+

+

+

+

+

+

109

GetAvailableProcessors

+

+

+

+

+

+

+

+

 

System Properties

 

 

 

 

 

 

 

 

110

AddToBootstrapClassLoaderSearch

+

+

+

+

+

+

+

+

111

GetSystemProperties

+

+

+

+

+

+

+

+

112

GetSystemProperty

+

+

+

+

+

+

+

+

113

SetSystemProperty

+

+

+

+

+

+

+

+

 

General

 

 

 

 

 

 

 

 

114

GetPhase

+

+

+

+

+

+

+

+

115

DisposeEnvironment

+

+

+

+

+

+

+

+

116

SetEnvironmentLocalStorage

+

+

+

+

+

+

+

+

117

GetEnvironmentLocalStorage

+

+

+

+

+

+

+

+

118

GetVersionNumber

+

+

+

+

+

+

+

+

119

GetErrorName

+

+

+

+

+

+

+

+

120

SetVerboseFlag

+

+

+

+

+

+

+

+

121

GetJLocationFormat

+

+

+

+

+

+

+

+

  • No labels