--- /dev/null
+#include "../core_common.inc"
+/*****************************************************************
+ * Call C++ global and static objects constructors
+ * can be overwriten by user function with the same name
+ *****************************************************************/
+ .section .init6, "ax", @progbits
+
+ .weak __do_global_ctors
+ .func __do_global_ctors
+
+
+__do_global_ctors:
+
+ XMOVA #__ctors_start, r11
+ XMOVA #__ctors_end, r10
+.L__ctors_loop:
+ XCALL @r11+ ; call constructor
+ XCMP r10, r11
+ jne .L__ctors_loop
+
+ ; require linking of stack initialization
+ .global __init_stack ; stack has to be set before constructors calling
+
+ .endfunc