]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - include/asm-generic/vmlinux.lds.h
Merge branches 'sched/clock', 'sched/cleanups' and 'linus' into sched/urgent
[mv-sheeva.git] / include / asm-generic / vmlinux.lds.h
index 3b46ae464933f7af1a3908e32218d95ca45356c5..c61fab1dd2f82cbde0df850274a595d4c79aa450 100644 (file)
 #endif
 
 #ifdef CONFIG_TRACE_BRANCH_PROFILING
-#define LIKELY_PROFILE()       VMLINUX_SYMBOL(__start_likely_profile) = .;   \
-                               *(_ftrace_likely)                             \
-                               VMLINUX_SYMBOL(__stop_likely_profile) = .;    \
-                               VMLINUX_SYMBOL(__start_unlikely_profile) = .; \
-                               *(_ftrace_unlikely)                           \
-                               VMLINUX_SYMBOL(__stop_unlikely_profile) = .;
+#define LIKELY_PROFILE()       VMLINUX_SYMBOL(__start_annotated_branch_profile) = .; \
+                               *(_ftrace_annotated_branch)                           \
+                               VMLINUX_SYMBOL(__stop_annotated_branch_profile) = .;
 #else
 #define LIKELY_PROFILE()
 #endif
 
+#ifdef CONFIG_PROFILE_ALL_BRANCHES
+#define BRANCH_PROFILE()       VMLINUX_SYMBOL(__start_branch_profile) = .;   \
+                               *(_ftrace_branch)                             \
+                               VMLINUX_SYMBOL(__stop_branch_profile) = .;
+#else
+#define BRANCH_PROFILE()
+#endif
+
 /* .data section */
 #define DATA_DATA                                                      \
        *(.data)                                                        \
@@ -75,7 +80,8 @@
        VMLINUX_SYMBOL(__start___tracepoints) = .;                      \
        *(__tracepoints)                                                \
        VMLINUX_SYMBOL(__stop___tracepoints) = .;                       \
-       LIKELY_PROFILE()
+       LIKELY_PROFILE()                                                \
+       BRANCH_PROFILE()
 
 #define RO_DATA(align)                                                 \
        . = ALIGN((align));                                             \
                *(.kprobes.text)                                        \
                VMLINUX_SYMBOL(__kprobes_text_end) = .;
 
+#ifdef CONFIG_FUNCTION_GRAPH_TRACER
+#define IRQENTRY_TEXT                                                  \
+               ALIGN_FUNCTION();                                       \
+               VMLINUX_SYMBOL(__irqentry_text_start) = .;              \
+               *(.irqentry.text)                                       \
+               VMLINUX_SYMBOL(__irqentry_text_end) = .;
+#else
+#define IRQENTRY_TEXT
+#endif
+
 /* Section used for early init (in .S files) */
 #define HEAD_TEXT  *(.head.text)