| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
We are never going to update the files that generate this test and
the interaction with "cvs up" means we can accidentally hit it when
they hange between releases but permissions when building the system
prevent us from writing the update and breaks the build.
Found by naddy@, krw@, and deraadt@
|
|
|
|
| |
OK sthen@
|
|
|
|
| |
OK sthen@
|
|
|
|
| |
OK sthen@
|
|
|
|
| |
OK sthen@
|
|
|
|
| |
segfaults seen on exception handling. ok kettenis@
|
|
|
|
|
|
|
| |
This reapplies commit e0lLUzj1XNW7pJMh and moves libperl to 21.0
The ABI change appears to be fine after XS modules are rebuilt.
OK sthen@
|
|
|
|
| |
Unintentionally changes ABI and breaks perl ports
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Different flags triggering new compiler optimizations means that
luck has run out on this working by chance with the strict alignment
of octeon.
Upstream issue:
https://github.com/Perl/perl5/issues/18555
This is a combination of three commits from upstream.
https://github.com/Perl/perl5/commit/d18575f18c6ee61ce80492e82cae7361358d570a
https://github.com/Perl/perl5/commit/6027b190154088fbbcbde08a80c49531e4e4c012
https://github.com/Perl/perl5/commit/f43079cb514e3d0be0036424695438ae3fb58451
works on all arch deraadt@
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of using #if defined(__arch__) to include / exclude the entire contents
of the NativeRegisterContext implementations, use a single NativeRegisterContextOpenBSD_arch
which includes the right arch specific register context, and provides a dummy implementation
for unsupported architectures.
This allows building lldb on architectures which do not have a register context implementation
so it can be used as a remote client.
ok patrick@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Remove watchpoint support since we do not support hardware watchpoints.
- Support floating point regsisters in the ReadAll/WriteAll interface.
- Standardize the sizes used in GerGPRSize() and GetFPRSize() to correspond
to the sizes we get from ptrace.
- Fix the r/w of the mmx registers to map onto the st fp registers instead
of xmm registers.
- Normalize some variable names to be architecture neutral.
ok patrick@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
moved into BSS in the .o, with padding rules following the types -- they
are both char[]. Since P_hash_seed is (system-dependent) not a multiple of 8,
P_hash_state gets layed out misaligned, which sucks because the hash functions
demand 64-bit alignment for both variables. There is the possibility of using
misalignment macros, but this is not cheap. Could also use kernel-trap fault
repair, but the performance would really suck for something so crucial.
The correct fix would be for upstream to declare these types as uint64[],
we have requested that in https://github.com/Perl/perl5/issues/18555
In the meantime, carry a diff to roundup P_hash_seed to 64-bit alignment so that
P_hash_state will land aligned.
ok afresh1
|
| |
|
|
|
|
| |
Discussed with deraadt@
|
|
|
|
|
|
|
|
| |
Map deliberately invalid signal to zero when passing to PT_STEP and P_CONTINUE.
Also clean up getting Environment so setting LLDB_DEBUGSERVER env vars works again.
ok patrick@
|
|
|
|
|
|
|
|
|
|
| |
Common variables will be flagged as errors by default. This can
be overridden with -fcommon.
Cherry-pick this change that will be part of LLVM11. We bring it
forward so we can finish fixing the fallout in the ports tree.
ok deraadt@ sthen@ mglocker@
|
|
|
|
|
|
|
| |
We are never updating this sub-tree. Knock out the collision in the simplest
way. diff from mortimer.
This is the last change required for -fno-common on all architectures,
thanks to mortimer for starting the effort and encouraging others.
|
|
|
|
| |
ok deraadt@
|
|
|
|
| |
ok deraadt@
|
|
|
|
|
|
| |
Further libc++ header fixes for ports thanks to kettenis@
Ports build test and fixes thanks to naddy@
"Startschuss!" naddy@
|
|
|
|
|
|
| |
Fixes building the textproc/groff port (and maybe others).
ok naddy@
|
| |
|
|
|
|
| |
and build location.
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
upcoming update to those, which will see both codebases heading into the
gnu/llvm dumpster.
Feedback from jsg@
ok deraadt@ kettenis@
|
|
|
|
| |
ok kettenis@
|
|
|
|
| |
ok kettenis@
|
|
|
|
|
|
| |
Fixes build on powerpc and sparc64.
ok patrick@
|
|
|
|
|
|
|
| |
PPC ASM had to be re-applied manually due to whitespace changes upstream,
other merge conflicts were harmless.
"Looks good" kettenis@
|
|
|
|
|
|
| |
build.
Encouraged by kettenis@
|
|
|
|
|
|
|
|
| |
On architectures that do not always spill the return address to the stack,
it is possible for local stack frame data corruption in leaf functions to
span stack frames if the retguard cookie is not spilled in the function.
In leaf functions on these architectures, now spill the retguard cookie if
the function contains arrays or has variables which have their address taken.
|
|
|
|
|
|
| |
generated with the static linked ELF file.
ok mpi@
|
|
|
|
|
|
|
|
|
|
| |
This adapts the -mfix-loongson2f-btb workaround from as(1) to
LLVM/clang. Because LLVM emits machine code directly without using
assembly as intermediary form, the workaround has to be applied
in the compiler backend in addition to the integrated assembler.
Discussed with miod@
OK mortimer@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add R_PPC_ADDR24 to lld. We need R_PPC_ADDR24 for absolute branches
"ba" and "bla" in locore.S in the kernel.
In Makefile.macppc, add a gapdummy (like in Makefile.powerpc64) to
avoid an lld error. Also adapt a part of Makefile.i386, so my
powerpc64 can use clang and lld to build and link the macppc kernel.
(I didn't boot that kernel.)
My macppc can now build, link, and boot kernels with either ld.bfd or
ld.lld. Beware that kernels linked with ld.lld have at least one
problem (wrong &etext) not yet fixed.
ok kettenis@
|
|
|
|
|
|
|
| |
undefined references to .got2 on powerpc making it possible to link
llvm with lld.
ok gkoehler@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In the PPC32 SVR4 ABI, a va_list has copies of registers from the
function call. va_arg looked in the wrong registers for (the pointer
representation of) an object in Objective-C, and for some types in
C++. Fix va_arg to look in the general-purpose registers, not the
floating-point registers. Also fix va_arg for some C++ types, like a
member function pointer, that are aggregates for the ABI.
Anthony Richardby found the problem in Objective-C. Eli Friedman
suggested part of this fix.
Fixes https://bugs.llvm.org/show_bug.cgi?id=47921
I have submitted this diff as https://reviews.llvm.org/D90329
ok kettenis@
|
|
|
|
|
| |
From Brad
ok mortimer@
|
|
|
|
|
|
| |
object file.
ok guenther@
|
|
|
|
|
|
|
| |
Change the 64-bit target to use "ld" (load 64-bit doubleword) for the
cookie. The 32-bit target stays with "lwz" (load 32-bit word).
ok mortimer@
|
|
|
|
| |
Fixes build on powerpc
|
|
|
|
| |
ok deraadt@ kettenis@
|
|
|
|
| |
ok deraadt@
|
| |
|
|
|
|
|
| |
Fixes creation of static binaries with base gcc and ld.lld.
OK kettenis@ a while ago, prodded by daniel@
|
|
|
|
|
|
| |
registers with retguard enabled.
ok kettenis@
|
|
|
|
|
|
|
| |
test program "try" already has a signal handler for SIGSEGV, but
OpenBSD generates a SIGBUS. Also set a handler for the latter to
exit cleanly.
from deraadt@; OK afresh1@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Disable options like clang -fno-unsafe-math-optimizations for all
targets except X86 (and SystemZ). This prevents a crash of clang,
reported by cwen@, in graphics/babl or emulators/mednafen for powerpc.
ok mortimer@
This change comes from llvm 11.x:
https://github.com/llvm/llvm-project/commit/d4ce862
Reland "[FPEnv][Clang][Driver] Disable constrained floating point on targets lacking support."
We currently have strict floating point/constrained floating point enabled
for all targets. Constrained SDAG nodes get converted to the regular ones
before reaching the target layer. In theory this should be fine.
However, the changes are exposed to users through multiple clang options
already in use in the field, and the changes are _completely_ _untested_
on almost all of our targets. Bugs have already been found, like
"https://bugs.llvm.org/show_bug.cgi?id=45274".
This patch disables constrained floating point options in clang everywhere
except X86 and SystemZ. A warning will be printed when this happens.
Use the new -fexperimental-strict-floating-point flag to force allowing
strict floating point on hosts that aren't already marked as supporting
it (X86 and SystemZ).
Differential Revision: https://reviews.llvm.org/D80952
|
|
|
|
|
|
|
|
|
|
|
| |
This comment was from my commit of 2020-05-02,
> Don't make an illegal adde. Avoids fatal error on PowerPC.
When we merged LLVM 10, we got upstream's fix for the illegal adde
problem, and this comment became the only difference in this file
between us and upstream.
Found by Brad Smith.
|
|
|
|
|
|
|
|
| |
LLVM 10 includes a different fix (https://reviews.llvm.org/D71954), so
this change (by kettenis on 2019-02-18) is no longer needed. Thanks to
Brad Smith for providing the removal diff.
ok kettenis@
|