1/* SPDX-License-Identifier: Apache-2.0 */
2
3	/*
4	 * Save the current address to avoid changing it in this file.
5	 */
6	HIDDEN(__llext_current_addr = .);
7
8	/*
9	 * Map the 'no_syscall_impl' symbol in 'syscall_export_llext.c' to
10	 * absolute address 0 so other weak symbols are exported as NULL.
11	 * This section is used for mapping that symbol only and is not
12	 * to be included in the final binary.
13	 */
14	SECTION_PROLOGUE(llext_no_syscall_impl, 0 (COPY), )
15	{
16	  *(llext_no_syscall_impl)
17	}
18
19	/*
20	 * Special section used by LLEXT if CONFIG_LLEXT_EXPORT_BUILTINS_BY_SLID
21	 * is enabled. Declare this section to prevent it from being considered orphan.
22	 *
23	 * This section is used to temporarily save the exported symbols' names in the
24	 * Zephyr ELF for post-processing, but it is not included in the final binary.
25	 *
26	 * NOTE: This section MUST start at address 0, as the post-processing scripts
27	 * assume that the address of any data in this section (i.e., symbol names) is
28	 * strictly equivalent to the offset inside the section.
29	 */
30#ifdef CONFIG_LLEXT_EXPORT_BUILTINS_BY_SLID
31	SECTION_PROLOGUE(llext_exports_strtab, 0 (COPY), )
32	{
33	  KEEP(*(llext_exports_strtab))
34	}
35#endif
36
37	. = __llext_current_addr;
38