Reduce usage of the loader lock in method lookup.
[mono-project.git] / data / mono.d
blobdae3c397d0ed200d87adf97af68f4640e72b9991
1 /*
2 * mono.d: DTrace provider for Mono
3 *
4 * Authors:
5 * Andreas Faerber <andreas.faerber@web.de>
6 *
7 */
9 provider mono {
10 /* Virtual Execution System (VES) */
11 probe ves__init__begin ();
12 probe ves__init__end ();
14 /* Just-in-time compiler (JIT) */
15 probe method__compile__begin (char* class_name, char* method_name, char* signature);
16 probe method__compile__end (char* class_name, char* method_name, char* signature, int success);
18 /* Garbage Collector (GC) */
19 probe gc__begin (int generation);
20 probe gc__end (int generation);
22 probe gc__requested (int generation, uintptr_t requested_size, int wait_to_finish);
24 probe gc__checkpoint__1 (int generation);
25 probe gc__checkpoint__2 (int generation);
26 probe gc__checkpoint__3 (int generation);
27 probe gc__checkpoint__4 (int generation);
28 probe gc__checkpoint__5 (int generation);
29 probe gc__checkpoint__6 (int generation);
30 probe gc__checkpoint__7 (int generation);
31 probe gc__checkpoint__8 (int generation);
32 probe gc__checkpoint__9 (int generation);
34 probe gc__concurrent__start__begin (int generation);
35 probe gc__concurrent__start__end (int generation, long long num_major_objects_marked);
36 probe gc__concurrent__update__finish__begin (int generation, long long num_major_objects_marked);
37 probe gc__concurrent__update__end (int generation, long long num_major_objects_marked);
38 probe gc__concurrent__finish__end (int generation, long long num_major_objects_marked);
40 probe gc__sweep__begin (int generation, int full_sweep);
41 probe gc__sweep__end (int generation, int full_sweep);
43 probe gc__world__stop__begin ();
44 probe gc__world__stop__end ();
45 probe gc__world__restart__begin (int generation);
46 probe gc__world__restart__end (int generation);
48 probe gc__heap__alloc (uintptr_t addr, uintptr_t len);
49 probe gc__heap__free (uintptr_t addr, uintptr_t len);
51 probe gc__locked ();
52 probe gc__unlocked ();
54 probe gc__nursery__tlab__alloc (uintptr_t addr, uintptr_t len);
55 probe gc__nursery__obj__alloc (uintptr_t addr, uintptr_t size, char *ns_name, char *class_name);
57 probe gc__major__obj__alloc__large (uintptr_t addr, uintptr_t size, char *ns_name, char *class_name);
58 probe gc__major__obj__alloc__pinned (uintptr_t addr, uintptr_t size, char *ns_name, char *class_name);
59 probe gc__major__obj__alloc__degraded (uintptr_t addr, uintptr_t size, char *ns_name, char *class_name);
60 probe gc__major__obj__alloc__mature (uintptr_t addr, uintptr_t size, char *ns_name, char *class_name);
62 /* Can be nursery->nursery, nursery->major or major->major */
63 probe gc__obj__moved (uintptr_t dest, uintptr_t src, int dest_gen, int src_gen, uintptr_t size, char *ns_name, char *class_name);
65 probe gc__nursery__swept (uintptr_t addr, uintptr_t len);
66 probe gc__major__swept (uintptr_t addr, uintptr_t len);
68 probe gc__obj__pinned (uintptr_t addr, uintptr_t size, char *ns_name, char *class_name, int generation);
70 probe gc__finalize__enqueue (uintptr_t addr, uintptr_t size, char *ns_name, char *class_name, int generation, int is_critical);
71 probe gc__finalize__invoke (uintptr_t addr, uintptr_t size, char *ns_name, char *class_name);
73 probe gc__weak__update (uintptr_t ref_addr, uintptr_t old_addr, uintptr_t new_addr, uintptr_t size, char *ns_name, char *class_name, int track);
75 probe gc__global__remset__add (uintptr_t ref_addr, uintptr_t obj_addr, uintptr_t size, char *ns_name, char *class_name);
76 probe gc__obj__cemented (uintptr_t addr, uintptr_t size, char *ns_name, char *class_name);
78 probe gc__internal__alloc (uintptr_t addr, uintptr_t size, int type);
79 probe gc__internal__dealloc (uintptr_t add, uintptr_t size, int type);
82 #pragma D attributes Evolving/Evolving/Common provider mono provider
83 #pragma D attributes Private/Private/Unknown provider mono module
84 #pragma D attributes Private/Private/Unknown provider mono function
85 #pragma D attributes Evolving/Evolving/Common provider mono name
86 #pragma D attributes Evolving/Evolving/Common provider mono args