~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/loongarch/kernel/vmlinux.lds.S

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /arch/loongarch/kernel/vmlinux.lds.S (Architecture alpha) and /arch/ppc/kernel/vmlinux.lds.S (Architecture ppc)


  1 /* SPDX-License-Identifier: GPL-2.0 */            
  2 #include <linux/sizes.h>                          
  3 #include <asm/asm-offsets.h>                      
  4 #include <asm/thread_info.h>                      
  5 #include <asm/orc_lookup.h>                       
  6                                                   
  7 #define PAGE_SIZE _PAGE_SIZE                      
  8 #define RO_EXCEPTION_TABLE_ALIGN        4         
  9 #define PHYSADDR_MASK                   0xffff    
 10                                                   
 11 /*                                                
 12  * Put .bss..swapper_pg_dir as the first thing    
 13  * ensure that it has .bss alignment (64K).       
 14  */                                               
 15 #define BSS_FIRST_SECTIONS *(.bss..swapper_pg_    
 16                                                   
 17 #include <asm-generic/vmlinux.lds.h>              
 18 #include "image-vars.h"                           
 19                                                   
 20 /*                                                
 21  * Max avaliable Page Size is 64K, so we set S    
 22  * field of EFI application to 64K.               
 23  */                                               
 24 PECOFF_FILE_ALIGN = 0x200;                        
 25 PECOFF_SEGMENT_ALIGN = 0x10000;                   
 26                                                   
 27 OUTPUT_ARCH(loongarch)                            
 28 ENTRY(kernel_entry)                               
 29 PHDRS {                                           
 30         text PT_LOAD FLAGS(7);  /* RWX */         
 31         note PT_NOTE FLAGS(4);  /* R__ */         
 32 }                                                 
 33                                                   
 34 jiffies  = jiffies_64;                            
 35                                                   
 36 SECTIONS                                          
 37 {                                                 
 38         . = VMLINUX_LOAD_ADDRESS;                 
 39                                                   
 40         _text = .;                                
 41         HEAD_TEXT_SECTION                         
 42                                                   
 43         . = ALIGN(PECOFF_SEGMENT_ALIGN);          
 44         _stext = .;                               
 45         .text : {                                 
 46                 TEXT_TEXT                         
 47                 SCHED_TEXT                        
 48                 LOCK_TEXT                         
 49                 KPROBES_TEXT                      
 50                 IRQENTRY_TEXT                     
 51                 SOFTIRQENTRY_TEXT                 
 52                 *(.fixup)                         
 53                 *(.gnu.warning)                   
 54         } :text = 0                               
 55         . = ALIGN(PECOFF_SEGMENT_ALIGN);          
 56         _etext = .;                               
 57                                                   
 58         . = ALIGN(PECOFF_SEGMENT_ALIGN);          
 59         __init_begin = .;                         
 60         __inittext_begin = .;                     
 61                                                   
 62         INIT_TEXT_SECTION(PAGE_SIZE)              
 63         .exit.text : {                            
 64                 EXIT_TEXT                         
 65         }                                         
 66                                                   
 67         . = ALIGN(PECOFF_SEGMENT_ALIGN);          
 68         __inittext_end = .;                       
 69                                                   
 70         __initdata_begin = .;                     
 71                                                   
 72         /*                                        
 73          * struct alt_inst entries. From the h    
 74          * "Alternative instructions for diffe    
 75          * Think locking instructions on spinl    
 76          */                                       
 77         . = ALIGN(4);                             
 78         .altinstructions : AT(ADDR(.altinstruc    
 79                 __alt_instructions = .;           
 80                 *(.altinstructions)               
 81                 __alt_instructions_end = .;       
 82         }                                         
 83                                                   
 84         INIT_DATA_SECTION(16)                     
 85         .exit.data : {                            
 86                 EXIT_DATA                         
 87         }                                         
 88                                                   
 89 #ifdef CONFIG_SMP                                 
 90         PERCPU_SECTION(1 << CONFIG_L1_CACHE_SH    
 91 #endif                                            
 92                                                   
 93         .init.bss : {                             
 94                 *(.init.bss)                      
 95         }                                         
 96         . = ALIGN(PECOFF_SEGMENT_ALIGN);          
 97         __initdata_end = .;                       
 98                                                   
 99         __init_end = .;                           
100                                                   
101         _sdata = .;                               
102         RO_DATA(4096)                             
103                                                   
104         .got : ALIGN(16) { *(.got) }              
105         .plt : ALIGN(16) { *(.plt) }              
106         .got.plt : ALIGN(16) { *(.got.plt) }      
107                                                   
108         RW_DATA(1 << CONFIG_L1_CACHE_SHIFT, PA    
109                                                   
110         .rela.dyn : ALIGN(8) {                    
111                 __rela_dyn_begin = .;             
112                  *(.rela.dyn) *(.rela*)           
113                 __rela_dyn_end = .;               
114         }                                         
115                                                   
116 #ifdef CONFIG_RELR                                
117         .relr.dyn : ALIGN(8) {                    
118                 __relr_dyn_begin = .;             
119                  *(.relr.dyn)                     
120                 __relr_dyn_end = .;               
121         }                                         
122 #endif                                            
123                                                   
124         .data.rel : { *(.data.rel*) }             
125                                                   
126 #ifdef CONFIG_RELOCATABLE                         
127         . = ALIGN(8);                             
128         .la_abs : AT(ADDR(.la_abs) - LOAD_OFFS    
129                 __la_abs_begin = .;               
130                 *(.la_abs)                        
131                 __la_abs_end = .;                 
132         }                                         
133 #endif                                            
134                                                   
135         ORC_UNWIND_TABLE                          
136                                                   
137         .sdata : {                                
138                 *(.sdata)                         
139         }                                         
140         .edata_padding : { BYTE(0); . = ALIGN(    
141         _edata =  .;                              
142                                                   
143         BSS_SECTION(0, SZ_64K, 8)                 
144         . = ALIGN(PECOFF_SEGMENT_ALIGN);          
145                                                   
146         _end = .;                                 
147                                                   
148         STABS_DEBUG                               
149         DWARF_DEBUG                               
150         ELF_DETAILS                               
151                                                   
152 #ifdef CONFIG_EFI_STUB                            
153         /* header symbols */                      
154         _kernel_entry = ABSOLUTE(kernel_entry     
155         _kernel_asize = ABSOLUTE(_end - _text)    
156         _kernel_fsize = ABSOLUTE(_edata - _tex    
157         _kernel_vsize = ABSOLUTE(_end - __init    
158         _kernel_rsize = ABSOLUTE(_edata - __in    
159 #endif                                            
160                                                   
161         .gptab.sdata : {                          
162                 *(.gptab.data)                    
163                 *(.gptab.sdata)                   
164         }                                         
165         .gptab.sbss : {                           
166                 *(.gptab.bss)                     
167                 *(.gptab.sbss)                    
168         }                                         
169                                                   
170         DISCARDS                                  
171         /DISCARD/ : {                             
172                 *(.dynamic .dynsym .dynstr .ha    
173                 *(.gnu.attributes)                
174                 *(.options)                       
175                 *(.eh_frame)                      
176         }                                         
177 }                                                 
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php