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
>>...
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