1 //===-- crtend.c - End of constructors and destructors --------------------===// 2 // 3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4 // See https://llvm.org/LICENSE.txt for license information. 5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6 // 7 //===----------------------------------------------------------------------===// 8 9 #include <stdint.h> 10 11 // Put 4-byte zero which is the length field in FDE at the end as a terminator. 12 const int32_t __EH_FRAME_LIST_END__[] 13 __attribute__((section(".eh_frame"), aligned(sizeof(int32_t)), 14 visibility("hidden"), used)) = {0}; 15 16 #ifndef CRT_HAS_INITFINI_ARRAY 17 typedef void (*fp)(void); 18 fp __CTOR_LIST_END__[] 19 __attribute__((section(".ctors"), visibility("hidden"), used)) = {0}; 20 fp __DTOR_LIST_END__[] 21 __attribute__((section(".dtors"), visibility("hidden"), used)) = {0}; 22 #endif 23