diff mbox series

[v2,1/1] efi_loader: __cyg_profile_func_enter/_exit

Message ID 20200101124751.31286-1-xypron.glpk@gmx.de
State Accepted
Commit 9bb758aab63dd5972b27b8dc1a0f22224b54f885
Headers show
Series [v2,1/1] efi_loader: __cyg_profile_func_enter/_exit | expand

Commit Message

Heinrich Schuchardt Jan. 1, 2020, 12:47 p.m. UTC
U-Boot can be compiled with function tracing enabled.

When compiling with FTRACE __cyg_profile_func_enter() is called when a
function is entered and __cyg_profile_func_exit() when the function is
left.

To avoid a crash we have to define these function for the free-standing
UEFI binaries.

Signed-off-by: Heinrich Schuchardt <xypron.glpk at gmx.de>
---
v2
	remove changes in Makefile that slipped in by error
---
 lib/efi_loader/efi_freestanding.c | 32 +++++++++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

--
2.24.1
diff mbox series

Patch

diff --git a/lib/efi_loader/efi_freestanding.c b/lib/efi_loader/efi_freestanding.c
index bd9da5bbc8..dcf5d1c49a 100644
--- a/lib/efi_loader/efi_freestanding.c
+++ b/lib/efi_loader/efi_freestanding.c
@@ -88,3 +88,35 @@  void *memset(void *s, int c, size_t n)
 		*d++ = c;
 	return s;
 }
+
+/**
+ * __cyg_profile_func_enter() - record function entry
+ *
+ * This is called on every function entry when compiling with
+ * -finstrument-functions.
+ *
+ * We do nothing here.
+ *
+ * @param func_ptr	Pointer to function being entered
+ * @param caller	Pointer to function which called this function
+ */
+void __attribute__((no_instrument_function))
+__cyg_profile_func_enter(void *func_ptr, void *caller)
+{
+}
+
+/**
+ * __cyg_profile_func_exit() - record function exit
+ *
+ * This is called on every function exit when compiling with
+ * -finstrument-functions.
+ *
+ * We do nothing here.
+ *
+ * @param func_ptr	Pointer to function being entered
+ * @param caller	Pointer to function which called this function
+ */
+void __attribute__((no_instrument_function))
+__cyg_profile_func_exit(void *func_ptr, void *caller)
+{
+}