include/asm-generic/vmlinux.lds.h
changeset 2 d1f6d8b6f81c
parent 0 aa628870c1d3
equal deleted inserted replaced
1:0056487c491e 2:d1f6d8b6f81c
    41 #define MCOUNT_REC()	VMLINUX_SYMBOL(__start_mcount_loc) = .; \
    41 #define MCOUNT_REC()	VMLINUX_SYMBOL(__start_mcount_loc) = .; \
    42 			*(__mcount_loc)				\
    42 			*(__mcount_loc)				\
    43 			VMLINUX_SYMBOL(__stop_mcount_loc) = .;
    43 			VMLINUX_SYMBOL(__stop_mcount_loc) = .;
    44 #else
    44 #else
    45 #define MCOUNT_REC()
    45 #define MCOUNT_REC()
       
    46 #endif
       
    47 
       
    48 #ifdef CONFIG_TRACE_BRANCH_PROFILING
       
    49 #define LIKELY_PROFILE()	VMLINUX_SYMBOL(__start_annotated_branch_profile) = .; \
       
    50 				*(_ftrace_annotated_branch)			      \
       
    51 				VMLINUX_SYMBOL(__stop_annotated_branch_profile) = .;
       
    52 #else
       
    53 #define LIKELY_PROFILE()
       
    54 #endif
       
    55 
       
    56 #ifdef CONFIG_PROFILE_ALL_BRANCHES
       
    57 #define BRANCH_PROFILE()	VMLINUX_SYMBOL(__start_branch_profile) = .;   \
       
    58 				*(_ftrace_branch)			      \
       
    59 				VMLINUX_SYMBOL(__stop_branch_profile) = .;
       
    60 #else
       
    61 #define BRANCH_PROFILE()
    46 #endif
    62 #endif
    47 
    63 
    48 /* .data section */
    64 /* .data section */
    49 #define DATA_DATA							\
    65 #define DATA_DATA							\
    50 	*(.data)							\
    66 	*(.data)							\
    58 	MEM_KEEP(exit.data)						\
    74 	MEM_KEEP(exit.data)						\
    59 	. = ALIGN(8);							\
    75 	. = ALIGN(8);							\
    60 	VMLINUX_SYMBOL(__start___markers) = .;				\
    76 	VMLINUX_SYMBOL(__start___markers) = .;				\
    61 	*(__markers)							\
    77 	*(__markers)							\
    62 	VMLINUX_SYMBOL(__stop___markers) = .;				\
    78 	VMLINUX_SYMBOL(__stop___markers) = .;				\
       
    79 	. = ALIGN(32);							\
    63 	VMLINUX_SYMBOL(__start___tracepoints) = .;			\
    80 	VMLINUX_SYMBOL(__start___tracepoints) = .;			\
    64 	*(__tracepoints)						\
    81 	*(__tracepoints)						\
    65 	VMLINUX_SYMBOL(__stop___tracepoints) = .;
    82 	VMLINUX_SYMBOL(__stop___tracepoints) = .;			\
       
    83 	LIKELY_PROFILE()		       				\
       
    84 	BRANCH_PROFILE()
    66 
    85 
    67 #define RO_DATA(align)							\
    86 #define RO_DATA(align)							\
    68 	. = ALIGN((align));						\
    87 	. = ALIGN((align));						\
    69 	.rodata           : AT(ADDR(.rodata) - LOAD_OFFSET) {		\
    88 	.rodata           : AT(ADDR(.rodata) - LOAD_OFFSET) {		\
    70 		VMLINUX_SYMBOL(__start_rodata) = .;			\
    89 		VMLINUX_SYMBOL(__start_rodata) = .;			\
   266 #define KPROBES_TEXT							\
   285 #define KPROBES_TEXT							\
   267 		ALIGN_FUNCTION();					\
   286 		ALIGN_FUNCTION();					\
   268 		VMLINUX_SYMBOL(__kprobes_text_start) = .;		\
   287 		VMLINUX_SYMBOL(__kprobes_text_start) = .;		\
   269 		*(.kprobes.text)					\
   288 		*(.kprobes.text)					\
   270 		VMLINUX_SYMBOL(__kprobes_text_end) = .;
   289 		VMLINUX_SYMBOL(__kprobes_text_end) = .;
       
   290 
       
   291 #ifdef CONFIG_FUNCTION_GRAPH_TRACER
       
   292 #define IRQENTRY_TEXT							\
       
   293 		ALIGN_FUNCTION();					\
       
   294 		VMLINUX_SYMBOL(__irqentry_text_start) = .;		\
       
   295 		*(.irqentry.text)					\
       
   296 		VMLINUX_SYMBOL(__irqentry_text_end) = .;
       
   297 #else
       
   298 #define IRQENTRY_TEXT
       
   299 #endif
   271 
   300 
   272 /* Section used for early init (in .S files) */
   301 /* Section used for early init (in .S files) */
   273 #define HEAD_TEXT  *(.head.text)
   302 #define HEAD_TEXT  *(.head.text)
   274 
   303 
   275 /* init and exit section handling */
   304 /* init and exit section handling */