parent
							
								
									9563cab961
								
							
						
					
					
						commit
						e8936bca72
					
				| 
						 | 
					@ -54,12 +54,23 @@ public:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  // The garbage collector sets sections' Live bits.
 | 
					  // The garbage collector sets sections' Live bits.
 | 
				
			||||||
  // If GC is disabled, all sections are considered live by default.
 | 
					  // If GC is disabled, all sections are considered live by default.
 | 
				
			||||||
  unsigned Live : 1;     // for garbage collection
 | 
					  unsigned Live : 1;
 | 
				
			||||||
  unsigned Assigned : 1; // for linker script
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
  uint32_t Alignment;
 | 
					  // True if this section has already been placed to a linker script
 | 
				
			||||||
 | 
					  // output section. This is needed because, in a linker script, you
 | 
				
			||||||
 | 
					  // can refer to the same section more than once. For example, in
 | 
				
			||||||
 | 
					  // the following linker script,
 | 
				
			||||||
 | 
					  //
 | 
				
			||||||
 | 
					  //   .foo : { *(.text) }
 | 
				
			||||||
 | 
					  //   .bar : { *(.text) }
 | 
				
			||||||
 | 
					  //
 | 
				
			||||||
 | 
					  // .foo takes all .text sections, and .bar becomes empty. To achieve
 | 
				
			||||||
 | 
					  // this, we need to memorize whether a section has been placed or
 | 
				
			||||||
 | 
					  // not for each input section.
 | 
				
			||||||
 | 
					  unsigned Assigned : 1;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  // These corresponds to the fields in Elf_Shdr.
 | 
					  // These corresponds to the fields in Elf_Shdr.
 | 
				
			||||||
 | 
					  uint32_t Alignment;
 | 
				
			||||||
  uint64_t Flags;
 | 
					  uint64_t Flags;
 | 
				
			||||||
  uint64_t Entsize;
 | 
					  uint64_t Entsize;
 | 
				
			||||||
  uint32_t Type;
 | 
					  uint32_t Type;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue