search for: _gp

Displaying 19 results from an estimated 19 matches for "_gp".

Did you mean: _gpl
2019 Jan 18
0
[klibc:master] mips/mips64: simplify crt0 code
...s(-) diff --git a/usr/klibc/arch/mips/crt0.S b/usr/klibc/arch/mips/crt0.S index 142d9f2..47d7d8f 100644 --- a/usr/klibc/arch/mips/crt0.S +++ b/usr/klibc/arch/mips/crt0.S @@ -10,16 +10,13 @@ #include <machine/asm.h> -NESTED(__start, 32, sp) - subu sp, 32 - sw zero, 16(sp) - - lui gp, %hi(_gp) # Initialize gp - addiu gp, gp, _gp - - addiu a0, sp, 32 # Pointer to ELF entry structure +NESTED(__start, 0, ra) + move a0, sp # Pointer to ELF entry structure move a1, v0 # Kernel-provided atexit() pointer + and sp, -8 # Align stack to 8 bytes + subu sp, 16 # Allocate 16 bytes for fu...
2015 Mar 06
0
[klibc:master] add-mips64-support-arch-mips64-specific
...cific initialization and invokes __libc_init +# with the appropriate arguments. +# +# See __static_init.c or __shared_init.c for the expected +# arguments. +# + +#include <machine/asm.h> + +NESTED(__start, 64, sp) + daddiu sp,sp,-64 + sd zero, 32(sp) + + # Initialize gp + lui gp,%highest(_gp) # load highest "halfword" + daddiu gp,gp,%higher(_gp) # merge next "halfword" + dsll gp,gp,16 # shift by one halfword + daddiu gp,gp,%hi(_gp) # merge next "halfword" + dsll gp,gp,16 # shift into final position + daddiu gp,gp,%lo(_gp) # merge lowest "...
2016 Sep 29
2
[lld][ELF] Addends adjustment for relocatable object
Initial issue is related to R_MIPS_GPREL16/32 relocations. When we calculate such relocations we need to know _gp symbol's value. This value might come from different sources. Usually we setup it using constant offset from the .got section. Also it might be defined by a linker script. And in rare but possible case it comes from .re...
2018 Mar 02
5
[PATCH 0/5] Various MIPS fixes
Hi, I noticed that klibc started crashing on 64-bit MIPS and in my quest to fix the bug I got a bit carried away and fixed a few other things as well. Here are various miscellaneous MIPS patches, although the first patch is the important one. Thanks, James *** BLURB HERE *** James Cowgill (5): mips64: compile with -mno-abicalls mips: use -Ttext-segment when linking shared library
2015 Feb 05
5
[LLVMdev] [lld] Representation of lld::Reference with a fake target
...relocation uses as a reference symbol specified by the r_sym field. The third relocation assumes NULL symbol. The most interesting case is the second relocation. It uses the special symbol value given by the r_ssym field. This field can contain four predefined values: * RSS_UNDEF - zero value * RSS_GP - value of gp symbol * RSS_GP0 - gp0 value taken from the .MIPS.options or .reginfo section * RSS_LOC - address of location being relocated So the problem is how to store these four constants in the lld::Reference object. The RSS_UNDEF is obviously not a problem. To represent the RSS_GP val...
2015 Feb 06
4
[LLVMdev] [lld] Representation of lld::Reference with a fake target
...ield. The third relocation >> assumes NULL symbol. >> >> The most interesting case is the second relocation. It uses the special >> symbol value given by the r_ssym field. This field can contain four >> predefined values: >> * RSS_UNDEF - zero value >> * RSS_GP - value of gp symbol >> * RSS_GP0 - gp0 value taken from the .MIPS.options or .reginfo section >> * RSS_LOC - address of location being relocated >> >> So the problem is how to store these four constants in the >> lld::Reference object. >> The RSS_UNDEF is...
2016 Sep 27
2
[lld][ELF] Addends adjustment for relocatable object
You are right. LLD does not have this problem. Initially I bumped into the MIPS specific bug related to GP relative relocations calculation. I tried to make reproduction script as general as possible and mistakenly make it too general. So now with your help I realized that the problem solely affects MIPS. On Tue, Sep 27, 2016 at 8:46 PM, Peter Smith <peter.smith at linaro.org> wrote: >
2015 Feb 07
2
[LLVMdev] [lld] Representation of lld::Reference with a fake target
...bol specified by the r_sym field. The third relocation > assumes NULL symbol. > > The most interesting case is the second relocation. It uses the special > symbol value given by the r_ssym field. This field can contain four > predefined values: > * RSS_UNDEF - zero value > * RSS_GP - value of gp symbol > * RSS_GP0 - gp0 value taken from the .MIPS.options or .reginfo section > * RSS_LOC - address of location being relocated > > So the problem is how to store these four constants in the > lld::Reference object. > The RSS_UNDEF is obviously not a problem...
2014 Mar 11
4
[PATCH] add mips64 support
.../klibc/archsetjmp.h + */ + +#ifndef _KLIBC_ARCHSETJMP_H +#define _KLIBC_ARCHSETJMP_H + +struct __jmp_buf { + unsigned long __s0; + unsigned long __s1; + unsigned long __s2; + unsigned long __s3; + unsigned long __s4; + unsigned long __s5; + unsigned long __s6; + unsigned long __s7; + unsigned long __gp; + unsigned long __sp; + unsigned long __s8; + unsigned long __ra; + unsigned long __f20; + unsigned long __f21; + unsigned long __f22; + unsigned long __f23; + unsigned long __f24; + unsigned long __f25; + unsigned long __f26; + unsigned long __f27; + unsigned long __f28; + unsigned long __f29; +...
2015 Feb 07
2
[LLVMdev] [lld] Representation of lld::Reference with a fake target
...l. > >>> > >>> The most interesting case is the second relocation. It uses the special > >>> symbol value given by the r_ssym field. This field can contain four > >>> predefined values: > >>> * RSS_UNDEF - zero value > >>> * RSS_GP - value of gp symbol > >>> * RSS_GP0 - gp0 value taken from the .MIPS.options or .reginfo > section > >>> * RSS_LOC - address of location being relocated > >>> > >>> So the problem is how to store these four constants in the > >>&gt...
2015 Feb 09
2
[LLVMdev] [lld] Representation of lld::Reference with a fake target
...gt;>> assumes NULL symbol. >>> >>> The most interesting case is the second relocation. It uses the special >>> symbol value given by the r_ssym field. This field can contain four >>> predefined values: >>> * RSS_UNDEF - zero value >>> * RSS_GP - value of gp symbol >>> * RSS_GP0 - gp0 value taken from the .MIPS.options or .reginfo section >>> * RSS_LOC - address of location being relocated >>> >>> So the problem is how to store these four constants in the >>> lld::Reference object. >&...
2015 Feb 07
4
[LLVMdev] [lld] Representation of lld::Reference with a fake target
...e is the second relocation. It uses the > >> >>> special > >> >>> symbol value given by the r_ssym field. This field can contain four > >> >>> predefined values: > >> >>> * RSS_UNDEF - zero value > >> >>> * RSS_GP - value of gp symbol > >> >>> * RSS_GP0 - gp0 value taken from the .MIPS.options or .reginfo > >> >>> section > >> >>> * RSS_LOC - address of location being relocated > >> >>> > >> >>> So the problem is...
2006 Jun 26
2
[klibc 28/43] mips support for klibc
.../klibc/archsetjmp.h + */ + +#ifndef _KLIBC_ARCHSETJMP_H +#define _KLIBC_ARCHSETJMP_H + +struct __jmp_buf { + unsigned long __s0; + unsigned long __s1; + unsigned long __s2; + unsigned long __s3; + unsigned long __s4; + unsigned long __s5; + unsigned long __s6; + unsigned long __s7; + unsigned long __gp; + unsigned long __sp; + unsigned long __s8; + unsigned long __ra; + unsigned long __f20; + unsigned long __f21; + unsigned long __f22; + unsigned long __f23; + unsigned long __f24; + unsigned long __f25; + unsigned long __f26; + unsigned long __f27; + unsigned long __f28; + unsigned long __f29; +...
2015 Feb 07
2
[LLVMdev] [lld] Representation of lld::Reference with a fake target
...cation. It uses the >> >> >>> special >> >> >>> symbol value given by the r_ssym field. This field can contain four >> >> >>> predefined values: >> >> >>> * RSS_UNDEF - zero value >> >> >>> * RSS_GP - value of gp symbol >> >> >>> * RSS_GP0 - gp0 value taken from the .MIPS.options or .reginfo >> >> >>> section >> >> >>> * RSS_LOC - address of location being relocated >> >> >>> >> >> >>&g...
2015 Feb 09
2
[LLVMdev] [lld] Representation of lld::Reference with a fake target
...;> >>>>> The most interesting case is the second relocation. It uses the special >>>>> symbol value given by the r_ssym field. This field can contain four >>>>> predefined values: >>>>> * RSS_UNDEF - zero value >>>>> * RSS_GP - value of gp symbol >>>>> * RSS_GP0 - gp0 value taken from the .MIPS.options or .reginfo >> section >>>>> * RSS_LOC - address of location being relocated >>>>> >>>>> So the problem is how to store these four constants in the...
2019 Jan 18
0
[klibc:master] mips: use -Ttext-segment when linking shared library
...XCLUDE_FILE (*crtend*.o ) .ctors)) - KEEP (*(SORT(.ctors.*))) - KEEP (*(.ctors)) - } - .dtors : - { - KEEP (*crtbegin*.o(.dtors)) - KEEP (*(EXCLUDE_FILE (*crtend*.o ) .dtors)) - KEEP (*(SORT(.dtors.*))) - KEEP (*(.dtors)) - } - .jcr : { KEEP (*(.jcr)) } - _gp = ALIGN(16) + 0x7ff0; - .got : { *(.got.plt) *(.got) } - /* We want the small data sections together, so single-instruction offsets - can access them all, and initialized data all before uninitialized, so - we can shorten the on-disk segment size. */ - .sdata : - {...
2015 Feb 07
2
[LLVMdev] [lld] Representation of lld::Reference with a fake target
...; special >>>> >> >>> symbol value given by the r_ssym field. This field can contain >>>> four >>>> >> >>> predefined values: >>>> >> >>> * RSS_UNDEF - zero value >>>> >> >>> * RSS_GP - value of gp symbol >>>> >> >>> * RSS_GP0 - gp0 value taken from the .MIPS.options or .reginfo >>>> >> >>> section >>>> >> >>> * RSS_LOC - address of location being relocated >>>> >> >>&...
2006 Jun 28
35
[klibc 00/31] klibc as a historyless patchset (updated and reorganized)
I have updated the klibc patchset based on feedback received. In particular, the patchset has been reorganized so as not to break git-bisect. Additionally, this updates the patch base to 2.6.17-git12 (d38b69689c349f35502b92e20dafb30c62d49d63) and klibc 1.4.8; the main difference on the klibc side is removal of obsolete code. This is also available as a git tree at:
2008 Jun 30
4
Rebuild of kernel 2.6.9-67.0.20.EL failure
Hello list. I'm trying to rebuild the 2.6.9.67.0.20.EL kernel, but it fails even without modifications. How did I try it? Created a (non-root) build environment (not a mock ) Installed the kernel.scr.rpm and did a rpmbuild -ba --target=`uname -m` kernel-2.6.spec 2> prep-err.log | tee prep-out.log The build failed at the end: Processing files: kernel-xenU-devel-2.6.9-67.0.20.EL Checking