| Age | Commit message (Collapse) | Author |
|
Indent END the same as ENTRY.
NFCI.
|
|
|
|
Thanks for Simon Burge for plic(4).
|
|
|
|
|
|
of the (old) alternative alias 'move'.
|
|
|
|
|
|
The old definitions in qp.c being all grouped together in one file
causes problems when static linking with libgcc (i.e. cc --static-libgcc)
due to functions like __trunctfdf2 conflicting with libgcc, as seen in
PR 57021
We can also add some missing functions like __fixdfti for converting
a double to an int128_t, the lack of which is currently preventing webkit
from linking on aarch64, as seen in PR 57022
Unclear to me if libc is the right place for these functions, but
we can avoid breaking compatibility right now and maintain the status
quo while avoiding some obvious immediate problems.
nm output for libc shows no functions being removed by this change.
|
|
directives to allow exception unwind / backtrace across a signal
handler.
|
|
to __cerror so if the ptrace syscall fails we can call __cerror again with
the correct %r19 value.
Do this even though the call of __cerror doesn't go via the PLT because
__cerror calls __errno which does.
Analysis and fix from Tom Lane in
port-hppa/56864: hppa: ptrace(2) dumps core when returning an error
I changed the location of where %r19 is stored on the stack to follow the
ABI.
|
|
with strictly-aligned versions.
Now all 32-bit powerpc ports share the same libc binary.
This change together with the preceding similar change in libkern slightly
improve performance for DHT (ibm4xx/405GP) and RB800 (MPC8533E).
See changes in bytebench scores:
- DHT https://gist.github.com/rokuyama/301063355de9733bea515b84ef574c0a
- RB800 https://gist.github.com/rokuyama/60ad665d367d6d110b79ec44707f39ff
Improvements may be negligible, but this does not cause performance
regressions at least.
This hack was for 403, but unaligned memory access is now emulated by
kernel. This should result in serious performance regression for 403.
We will provide strictly-aligned versions by ld.so.conf.
|
|
|
|
|
|
|
|
directives to allow exception unwind / backtrace across a signal
handler.
N.B. This is currently disabled, as these .cfi directives cause
linker warnings about incompatible TEXTREL relocations in .eh_frame.
|
|
directives to allow exception unwind / backtrace across a signal
handler.
|
|
directives to allow exception unwind / backtrace across a signal
handler.
|
|
to use DWARF pseudo-register for the signal trampoline return address.
Adjust the style to match other platforms.
|
|
directives to allow exception unwind / backtrace across a signal
handler.
|
|
directives to allow exception unwind / backtrace across a signal
handler.
|
|
|
|
directives to allow exception unwind / backtrace across a signal
handler.
|
|
|
|
|
|
|
|
- sparc and sparc64 were not using version 0 sigcontext when there were
no arguments in the signal version. This was probably a bug.
- vax is using +1 the version numbers of the other archs.
- Only hppa was defining __LIBC12_SOURCE__ so it was getting a working
sigcontext before. all the other ports that supported sigcontext had
the compat code disabled.
[pointed out by thorpej, thanks!]
If we want to remove sigcontext support from userland at least now there
is less work to do so.
|
|
|
|
- Add suffix ``d'' for mkdep(1).
- Improve comment a little...
|
|
memmove(3) consistently for debug library (*.go) in order to avoid
alignment faults for 403.
|
|
All changes from rin@ except swapcontext.S, which is from me (added
symbolic constants to make the code clearer).
|
|
_INVOKE_CERROR macro
|
|
expense of a couple more instructions).
|
|
|
|
- sp cannot be manipulated directly
- {add,sub}s should be used instead of {add,sub}
|
|
IIUC, this change only affects libc compiled for ``Thumb-mode userland'',
which we've not officially supported yet.
|
|
The longjmp() function shall not cause setjmp() to return 0; if val
is 0, setjmp() shall return 1.
Fixes the _longjmp_zero and longjmp_zero test cases in the t_setjmp
test on alpha.
|
|
|
|
syscall number in v0 and pass all the original __syscall() args in their
original slots/regs.
|
|
restore it _after_ the call to __errno(). Fixes sending the
__errno() call off to nowhereland when this code is included
in another library (eg __posix_cerror() in libposix). Failure
picked up by the ATF lib/libposix/posix1/t_rename test.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
kamil@'s test program:
Before:
Backtrace 2 stack frames.
0x120000a74 <handler+0x54> at ./test
0x3fffdca6550 <__sigtramp_siginfo_2> at /usr/lib/libc.so.12
After:
Backtrace 4 stack frames.
0x120000a74 <handler+0x54> at ./test
0x3fffdca6554 <__sigtramp_siginfo_2> at /usr/lib/libc.so.12
0x120000b10 <main+0x38> at ./test
0x1200009b4 <___start+0x1a4> at ./test
|
|
not offsets (i.e. *8 to get the offset).
- Define and use SIZEOF_SIGINFO and UC_GREGS constants, rather than
hard-code magic numbers.
NFC -- same object code is generated.
|
|
Improves unwinding of multiple frames without frame pointer.
|
|
Improves unwinding of multiple frames without base pointer.
|