search for: __bss_start

Displaying 20 results from an estimated 62 matches for "__bss_start".

2015 Aug 28
7
Clearing the BSS section
Hi, I am writing a function that clears the BSS section on an Cortex-M4 embedded system. The LLVM (version 3.7.0rc3) code I had wrote is : ;------------ target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64" target triple = "thumbv7em-none--eabi" @__bss_start = external global i32 @__bss_end = external global i32 define void @clearBSS () nounwind { entry: br label %bssLoopTest bssLoopTest: %p = phi i32* [@__bss_start, %entry], [%p.next, %bssLoop] %completed = icmp eq i32* %p, @__bss_end br i1 %completed, label %clearCompleted, label %bssLoo...
2012 Dec 07
3
[LLVMdev] Need to create symbols only once
Hi Nick, We have few symbols like __bss_start, __bss_end, which are Undefined symbols in the code. I want a way in the Reader to create specific atoms before the linker bootstraps. I didnt find a way to do that with the existing interfaces. The way it needs to work is as below :- 1) ReaderELF creates Absolute symbols (for __bss_start, __...
2012 Dec 07
0
[LLVMdev] Need to create symbols only once
On Dec 7, 2012, at 11:51 AM, Shankar Easwaran wrote: > We have few symbols like __bss_start, __bss_end, which are Undefined symbols in the code. > > I want a way in the Reader to create specific atoms before the linker bootstraps. > > I didnt find a way to do that with the existing interfaces. > > The way it needs to work is as below :- > > 1) ReaderELF creates...
2013 Jan 07
1
[LLVMdev] Need to create symbols only once
...The key here is that the Pass (not written yet) which sorts atoms, knows to sort these atoms to the start or end of their respective sections. > > If you don't want this full general, lazy approach, you could have your WriteELF::addFiles() return a regular object file that has atoms named __bss_start and __bss_end, but they are marked mergeAsWeak so that any user defined atoms will override them. The case I have is a bit different now. I added symbols __bss_start/__bss_end/_end using WriterELF::addFiles(). The symbols get overridden appropriately but the value of the symbols are known only a...
2012 Dec 10
1
[LLVMdev] Need to create symbols only once
...d too, any pointers to how you are doing that will be helpful. If not, I need to duplicate that piece of code, which doesnot make sense. Thanks Shankar Easwaran On 12/7/2012 4:59 PM, Nick Kledzik wrote: > On Dec 7, 2012, at 11:51 AM, Shankar Easwaran wrote: >> We have few symbols like __bss_start, __bss_end, which are Undefined symbols in the code. >> >> I want a way in the Reader to create specific atoms before the linker bootstraps. >> >> I didnt find a way to do that with the existing interfaces. >> >> The way it needs to work is as below :- >> &...
2015 Oct 05
0
[PATCH 2/4] Remove unused linker scripts
...- HIDDEN(__pm_code_end = .); - HIDDEN(__pm_code_len = ABSOLUTE(__pm_code_end) - ABSOLUTE(__pm_code_start)); - HIDDEN(__pm_code_dwords = (__pm_code_len + 3) >> 2); - - . = ALIGN(128); - - HIDDEN(__bss_vma = .); - HIDDEN(__bss_lma = .); /* Dummy */ - .bss (NOLOAD) : AT (__bss_lma) { - HIDDEN(__bss_start = .); - *(.bss) - *(.bss.*) - *(COMMON) - HIDDEN(__bss_end = .); - } - HIDDEN(__bss_len = ABSOLUTE(__bss_end) - ABSOLUTE(__bss_start)); - HIDDEN(__bss_dwords = (__bss_len + 3) >> 2); - - /* Data saved away before bss initialization */ - . = ALIGN(128); - - HIDDEN(__savedata_vma = .); - HI...
2015 Oct 05
7
[PATCH 0/4] Improve linker scripts
From: Sylvain Gault <sylvain.gault at gmail.com> These patches basically remove unused linker scripts and port a change that was made to an unused script. Those are to be applied on top of the gcc 5 bug fixes as they would conflict otherwise. Sylvain Gault (4): diag/mbr: fix dependency to linker script Remove unused linker scripts core: Make symbols defined in linker script HIDDEN
2012 Sep 06
26
Clang/LLVM version requirements
Is there a required Clang and LLVM version one needs to do a ''make xen-dist clang=y''? I recently tried and the process failed. I haven''t begun debugging as I figured I would ask the obvious first. The build failed with the following: ... make[4]: Entering directory `/home/builder/xen-unstable/xen/drivers'' make -f /home/builder/xen-unstable/xen/Rules.mk -C char
2018 May 23
0
[PATCH v3 18/27] xen: Adapt assembly for PIE support
...== R_X86_64_64) add_reloc(&relocs64, offset); diff --git a/arch/x86/xen/xen-head.S b/arch/x86/xen/xen-head.S index 5077ead5e59c..4418ff0a1d96 100644 --- a/arch/x86/xen/xen-head.S +++ b/arch/x86/xen/xen-head.S @@ -28,14 +28,15 @@ ENTRY(startup_xen) /* Clear .bss */ xor %eax,%eax - mov $__bss_start, %_ASM_DI - mov $__bss_stop, %_ASM_CX + _ASM_MOVABS $__bss_start, %_ASM_DI + _ASM_MOVABS $__bss_stop, %_ASM_CX sub %_ASM_DI, %_ASM_CX shr $__ASM_SEL(2, 3), %_ASM_CX rep __ASM_SIZE(stos) - mov %_ASM_SI, xen_start_info - mov $init_thread_union+THREAD_SIZE, %_ASM_SP + _ASM_MOVABS $xen_start_in...
2013 Dec 01
0
[PATCH v2 4/4] efi: PE file size differ from in-memory size
...inux.ld b/efi/i386/syslinux.ld index 523a9b9..bab3fc7 100644 --- a/efi/i386/syslinux.ld +++ b/efi/i386/syslinux.ld @@ -136,7 +136,7 @@ SECTIONS *(.strtab) } - .bss : { + .bss (NOLOAD) : { /* the EFI loader doesn't seem to like a .bss section, so we stick it all into .data: */ __bss_start = .; @@ -153,7 +153,7 @@ SECTIONS __bss_dwords = (__bss_len + 3) >> 2; . = ALIGN(128); - + /* Very large objects which don't need to be zeroed */ .hugebss : { diff --git a/efi/wrapper.c b/efi/wrapper.c index 4839e52..1988124 100644 --- a/efi/wrapper.c +++ b/efi/wrapper.c @@ -...
2013 Nov 27
0
[PATCH 4/4] efi: PE file size differ from in-memory size
...inux.ld b/efi/i386/syslinux.ld index 523a9b9..bab3fc7 100644 --- a/efi/i386/syslinux.ld +++ b/efi/i386/syslinux.ld @@ -136,7 +136,7 @@ SECTIONS *(.strtab) } - .bss : { + .bss (NOLOAD) : { /* the EFI loader doesn't seem to like a .bss section, so we stick it all into .data: */ __bss_start = .; @@ -153,7 +153,7 @@ SECTIONS __bss_dwords = (__bss_len + 3) >> 2; . = ALIGN(128); - + /* Very large objects which don't need to be zeroed */ .hugebss : { diff --git a/efi/wrapper.c b/efi/wrapper.c index 9652368..a5247ae 100644 --- a/efi/wrapper.c +++ b/efi/wrapper.c @@ -...
2017 Oct 12
2
[PATCH v1 15/27] compiler: Option to default to hidden symbols
...start, __irqentry_text_end > * __softirqentry_text_start, __softirqentry_text_end > */ > +#ifdef CONFIG_DEFAULT_HIDDEN > +#pragma GCC visibility push(default) > +#endif > extern char _text[], _stext[], _etext[]; > extern char _data[], _sdata[], _edata[]; > extern char __bss_start[], __bss_stop[]; > @@ -46,6 +49,9 @@ extern char __softirqentry_text_start[], __softirqentry_text_end[]; > > /* Start and end of .ctors section - used for constructor calls. */ > extern char __ctors_start[], __ctors_end[]; > +#ifdef CONFIG_DEFAULT_HIDDEN > +#pragma GCC visibil...
2017 Oct 12
2
[PATCH v1 15/27] compiler: Option to default to hidden symbols
...start, __irqentry_text_end > * __softirqentry_text_start, __softirqentry_text_end > */ > +#ifdef CONFIG_DEFAULT_HIDDEN > +#pragma GCC visibility push(default) > +#endif > extern char _text[], _stext[], _etext[]; > extern char _data[], _sdata[], _edata[]; > extern char __bss_start[], __bss_stop[]; > @@ -46,6 +49,9 @@ extern char __softirqentry_text_start[], __softirqentry_text_end[]; > > /* Start and end of .ctors section - used for constructor calls. */ > extern char __ctors_start[], __ctors_end[]; > +#ifdef CONFIG_DEFAULT_HIDDEN > +#pragma GCC visibil...
2018 Apr 27
0
[RFC][PATCH] Remove private symbols from Vorbis shared libs
...not present in it's public header (for a total of 85 symbols, see attach). Would it make sense to filter them via -fvisibility=hidden and -Wl,--version-script? I attached a draft patch. Best regards, Yury Gribov -------------- next part -------------- _book_maptype1_quantvals _book_unquantize __bss_start drft_backward drft_clear drft_forward drft_init _edata _end _fini _float32_pack _float32_unpack floor0_exportbundle floor1_encode floor1_exportbundle floor1_fit floor1_interpolate_fit _floor_P _init _make_words mapping0_exportbundle _mapping_P mdct_backward mdct_clear mdct_forward mdct_init ov_ilog...
2017 Oct 18
0
[PATCH v1 15/27] compiler: Option to default to hidden symbols
...; * __softirqentry_text_start, __softirqentry_text_end >> */ >> +#ifdef CONFIG_DEFAULT_HIDDEN >> +#pragma GCC visibility push(default) >> +#endif >> extern char _text[], _stext[], _etext[]; >> extern char _data[], _sdata[], _edata[]; >> extern char __bss_start[], __bss_stop[]; >> @@ -46,6 +49,9 @@ extern char __softirqentry_text_start[], __softirqentry_text_end[]; >> >> /* Start and end of .ctors section - used for constructor calls. */ >> extern char __ctors_start[], __ctors_end[]; >> +#ifdef CONFIG_DEFAULT_HIDDEN >&gt...
2013 Nov 27
20
[PATCH 0/4] efi: PE header generation fix
The PE headers of the generated efi file were quite buggy. And since OVMF perform a few consistency checks, syslinux was unable to run on it. I don't pretend to have a thorough understanding of the PE+ headers, some bugs may remain. :) Celelibi (4): efi: Fix PE header field rva_and_sizes_nr efi: Location, size and alignment of .text section efi: Useless relocations in PE file efi: PE
2017 Oct 11
0
[PATCH v1 15/27] compiler: Option to default to hidden symbols
...h @@ -30,6 +30,9 @@ * __irqentry_text_start, __irqentry_text_end * __softirqentry_text_start, __softirqentry_text_end */ +#ifdef CONFIG_DEFAULT_HIDDEN +#pragma GCC visibility push(default) +#endif extern char _text[], _stext[], _etext[]; extern char _data[], _sdata[], _edata[]; extern char __bss_start[], __bss_stop[]; @@ -46,6 +49,9 @@ extern char __softirqentry_text_start[], __softirqentry_text_end[]; /* Start and end of .ctors section - used for constructor calls. */ extern char __ctors_start[], __ctors_end[]; +#ifdef CONFIG_DEFAULT_HIDDEN +#pragma GCC visibility pop +#endif extern __vi...
2007 Sep 23
9
Confused about start of day setup
...4bit toy kernel (based on Mini-OS as starting point) for xen and I run into problems with the way the start of day sets up the physical pages. My kernel is mapped at 0 (due to Mini-OS being there): _text : 0x0 _etext : 0xcaef _edata : 0xe8c4 __bss_start : 0x10000 _end : 0x21590 nr_pages : 3072 start_info : 0x27000 pt_base : 0x2a000 nr_pt_frames : 5 machine_to_phys_mapping: 0xffff800000000000 phys_to_machine_mapping: 0x21000 The Mini-OS source says that...
2007 Jun 06
7
[PATCH RFC 0/7] proposed updates to boot protocol and paravirt booting
This series: 1. Updates the boot protocol to version 2.07 2. Clean up the existing build process, to get rid of tools/build and make the linker do more heavy lifting 3. Make the bzImage payload an ELF file. The bootloader can extract this as a naked ELF file by skipping over boot_params.setup_sects worth of 16-bit setup code. 4. Update the boot_params to 2.07, and update the
2007 Jun 06
7
[PATCH RFC 0/7] proposed updates to boot protocol and paravirt booting
This series: 1. Updates the boot protocol to version 2.07 2. Clean up the existing build process, to get rid of tools/build and make the linker do more heavy lifting 3. Make the bzImage payload an ELF file. The bootloader can extract this as a naked ELF file by skipping over boot_params.setup_sects worth of 16-bit setup code. 4. Update the boot_params to 2.07, and update the