Welcome to mirror list, hosted at ThFree Co, Russian Federation.

mono.d « data - github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: be871db851cc3fd18c8e8b97a0b5e59b02c49462 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
/* 
 * mono.d: DTrace provider for Mono
 * 
 * Authors:
 *   Andreas Faerber <andreas.faerber@web.de>
 * 
 */

provider mono {
	/* Virtual Execution System (VES) */
	probe ves__init__begin ();
	probe ves__init__end ();

	/* Just-in-time compiler (JIT) */
	probe method__compile__begin (char* class_name, char* method_name, char* signature);
	probe method__compile__end (char* class_name, char* method_name, char* signature, int success);

	/* Garbage Collector (GC) */	
	probe gc__begin (int generation);
	probe gc__end (int generation);

	probe gc__heap__alloc (void *addr, uintptr_t len);
	probe gc__heap__free (void *addr, uintptr_t len);

	probe gc__locked ();
	probe gc__unlocked ();

	probe gc__nursery__tlab__alloc (void *addr, uintptr_t len);
	probe gc__nursery__obj__alloc (void *addr, uintptr_t size, char *class_name);

	probe gc__major__obj__alloc__degraded (void *addr, uintptr_t size, char *class_name);
	probe gc__major__obj__alloc__mature (void *addr, uintptr_t size, char *class_name);

	probe gc__nursery__sweeped (void *addr, uintptr_t len);
	probe gc__major__sweeped (void *addr, uintptr_t len);

	probe gc__obj__pinned (void *addr, uintptr_t size, char *class_name, int generation);
};

#pragma D attributes Evolving/Evolving/Common provider mono provider
#pragma D attributes Private/Private/Unknown provider mono module
#pragma D attributes Private/Private/Unknown provider mono function
#pragma D attributes Evolving/Evolving/Common provider mono name
#pragma D attributes Evolving/Evolving/Common provider mono args