blob: f4baae88d21eb5d0f3cd31397ef29c728972ad8f [file] [log] [blame]
Pierre-Clément Tosi9a658f72022-10-10 15:18:54 +01001// Copyright 2022, The Android Open Source Project
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15//! Linker-defined symbols.
16
17extern "C" {
18 /// Stack canary value
19 pub static __stack_chk_guard: u64;
20 /// First byte beyond the pre-loaded binary.
21 pub static bin_end: u8;
22 /// First byte of the `.stack` section.
23 pub static boot_stack_begin: u8;
24 /// First byte beyond the `.stack` section.
25 pub static boot_stack_end: u8;
26 /// First byte of the `.bss` section.
27 pub static bss_begin: u8;
28 /// First byte beyond the `.bss` section.
29 pub static bss_end: u8;
30 /// First byte of the (loaded) `.data` section.
31 pub static data_begin: u8;
32 /// First byte beyond the (loaded) `.data` section.
33 pub static data_end: u8;
34 /// First byte of the pre-loaded `.data` section.
35 pub static data_lma: u8;
36 /// First byte of the `.dtb` section.
37 pub static dtb_begin: u8;
38 /// First byte beyond the `.dtb` section.
39 pub static dtb_end: u8;
40 /// First byte of the `.rodata` section.
41 pub static rodata_begin: u8;
42 /// First byte beyond the `.rodata` section.
43 pub static rodata_end: u8;
44 /// First byte of the `.text` section.
45 pub static text_begin: u8;
46 /// First byte beyond the `.text` section.
47 pub static text_end: u8;
48}