#
331722 |
|
29-Mar-2018 |
eadler |
Revert r330897:
This was intended to be a non-functional change. It wasn't. The commit message was thus wrong. In addition it broke arm, and merged crypto related code.
Revert with prejudice.
This revert skips files touched in r316370 since that commit was since MFCed. This revert also skips files that require $FreeBSD$ property changes.
Thank you to those who helped me get out of this mess including but not limited to gonzo, kevans, rgrimes.
Requested by: gjb (re)
|
#
330897 |
|
14-Mar-2018 |
eadler |
Partial merge of the SPDX changes
These changes are incomplete but are making it difficult to determine what other changes can/should be merged.
No objections from: pfg
|
#
302408 |
|
07-Jul-2016 |
gjb |
Copy head@r302406 to stable/11 as part of the 11.0-RELEASE cycle. Prune svn:mergeinfo from the new branch, as nothing has been merged here.
Additional commits post-branch will follow.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation |
#
300694 |
|
25-May-2016 |
ian |
Include machine/acle-compat.h in cdefs.h on arm if the compiler doesn't have ACLE support built in. The ACLE (ARM C Language Extensions) defines a set of standardized symbols which indicate the architecture version and features available. ACLE support is built in to modern compilers (both clang and gcc), but absent from gcc prior to 4.4.
ARM (the company) provides the acle-compat.h header file to define the right symbols for older versions of gcc. Basically, acle-compat.h does for arm about the same thing cdefs.h does for freebsd: defines standardized macros that work no matter which compiler you use. If ARM hadn't provided this file we would have ended up with a big #ifdef __arm__ section in cdefs.h with our own compatibility shims.
Remove #include <machine/acle-compat.h> from the zillion other places (an ever-growing list) that it appears. Since style(9) requires sys/types.h or sys/param.h early in the include list, and both of those lead to including cdefs.h, only a couple special cases still need to include acle-compat.h directly.
Loves it: imp
|
#
300050 |
|
17-May-2016 |
eadler |
Don't repeat the the word 'the'
(one manual change to fix grammar)
Confirmed With: db Approved by: secteam (not really, but this is a comment typo fix)
|
#
290648 |
|
10-Nov-2015 |
mmel |
ARM: Remove trailing whitespace from sys/arm/include No functional changes.
Approved by: kib (mentor)
|
#
288662 |
|
04-Oct-2015 |
rwatson |
Add missing stack unwind information to several assembly functions on ARMv6/7:
- Define _SAVE() macro to allow unwind data to be conditionally defined for ARM assembly code in the kernel.
- Use _SAVE() to provide unwind information for bcopy_page(), and two (of many) instances of copyin() and copyout().
Reviewed by: andrew, imp MFC after: 3 days Sponsored by: University of Cambridge
|
#
283812 |
|
31-May-2015 |
andrew |
We only support the ARM EABI in head, remove the check on __ARM_EABI__.
|
#
282778 |
|
11-May-2015 |
andrew |
Mark thumb entry points as such when building for thumb, otherwise mark them as arm.
|
#
282777 |
|
11-May-2015 |
andrew |
Use the Thumb compliant version of the add instruction. We can only use "add Rd, Rn, Rm" from within an IT (if-then) block.
|
#
276596 |
|
02-Jan-2015 |
ian |
Fix alignment directives in arm asm code after clang 3.5 import.
The ancient gas we've been using interprets .align 0 as align to the minimum required alignment for the current section. Clang's integrated assembler interprets it as align to a byte boundary. Fortunately both assemblers interpret a non-zero value as align to 2^N so just make sure we have appropriate non-zero values everywhere.
|
#
276519 |
|
01-Jan-2015 |
ian |
Define a WFI macro that expands to the right form of wait-for-interrupt depending on the architecture.
|
#
276247 |
|
26-Dec-2014 |
ian |
Include acle-compat.h directly (we use its symbols) rather than getting it via sysreg.h.
|
#
276212 |
|
25-Dec-2014 |
ian |
Add macros for asm barrier instructions with arch-specific implementations.
|
#
276204 |
|
25-Dec-2014 |
ian |
Create 'L' variants of all the ENTRY macros for file-static/local symbols.
If it seems like this is getting out of hand, I quite agree. I wonder if it's safe, here in the 21st century, to lose the distinction between C and ASM symbols?
|
#
276203 |
|
25-Dec-2014 |
ian |
Fix the GLOBAL macro so it works (upper vs lowercase X), use it in _EENTRY.
|
#
276202 |
|
25-Dec-2014 |
ian |
Stylish changes... put tabs where they need to be in macros, move lines around so that related things are more grouped together, rewrite comments.
No functional changes, this is all so that the functional changes in the next commit will stand out.
|
#
276198 |
|
25-Dec-2014 |
ian |
Remove _PROF_PROLOGUE from the EENTRY() macros. These macros define 'extra' entry points which are nested within or provide a synonym name for another function. It's most likely not safe to be messing with the IP and LR registers at anything other than the primary entry point to a function. Anywhere beyond initial function entry, those registers may be in use as scratch or variable registers.
|
#
275378 |
|
01-Dec-2014 |
andrew |
Pull in the NetBSD global offset table handling code. Clang 3.5 creates relocations the linker complains about.
Obtained from: NetBSD MFC after: 1 Week
|
#
275264 |
|
29-Nov-2014 |
andrew |
Update _ENTRY to use _EENTRY to reduce the common code.
|
#
275004 |
|
25-Nov-2014 |
emaste |
Revert r274772: it is not valid on MIPS
Reported by: sbruno
|
#
274772 |
|
21-Nov-2014 |
emaste |
Use canonical __PIC__ flag
It is automatically set when -fPIC is passed to the compiler.
Reviewed by: dim, kib Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D1179
|
#
271398 |
|
10-Sep-2014 |
andrew |
Unify interrupts bit definition and usage. While here remove PSR_C_bit.
Submitted by: Svatopluk Kraus <onwahe at gmail.com>, Michal Meloun <meloun at miracle.cz> Differential Revision: https://reviews.freebsd.org/D754
|
#
271394 |
|
10-Sep-2014 |
andrew |
Add more register values to armreg.h and remove CPU_CONTROL_32BP_ENABLE from asm.h as they were already defined in armreg.h.
Submitted by: Michal Meloun <meloun at miracle.cz>
|
#
270930 |
|
01-Sep-2014 |
ian |
Do not generate unwind info in asm functions if _STANDALONE is defined. The .fnend op causes the assembler to emit RELOC references to unwind support functions that don't exist in libstand.
|
#
269390 |
|
01-Aug-2014 |
ian |
Fix unwind-info errors in our hand-written arm assembler code.
We have functions nested within functions, and places where we start a function then never end it, we just jump to the middle of something else. We tried to express this with nested ENTRY()/END() macros (which result in .fnstart and .fnend directives), but it turns out there's no way to express that nesting in ARM EHABI unwind info, and newer tools treat multiple .fnstart directives without an intervening .fnend as an error.
These changes introduce two new macros, EENTRY() and EEND(). EENTRY() creates a global label you can call/jump to just like ENTRY(), but it doesn't emit a .fnstart. EEND() is a no-op that just documents the conceptual endpoint that matches up with the same-named EENTRY().
This is based on patches submitted by Stepan Dyatkovskiy, but I made some changes and added the EEND() stuff, so blame any problems on me.
Submitted by: Stepan Dyatkovskiy <stpworld@narod.ru>
|
#
251510 |
|
07-Jun-2013 |
andrew |
Reduce the difference to NetBSD.
* Stop pretending we support anything other than ELF by removing code surrounded by #ifdef __ELF__ ... #endif. * Remove _JB_MAGIC_SETJMP and _JB_MAGIC__SETJMP, they are defined in setjmp.h, which is able to be included from asm. * Fix the spelling of dependent. * Rename END _END and add END and ASEND to complement ENTRY and ASENTRY respectively * Add macros to simplify accessing the Global Offset Table, some of these will be used in the upcoming update to the setjmp functions.
|
#
248361 |
|
16-Mar-2013 |
andrew |
Add an END macro to ARM. This is mostly used to tell gas where the bounds of the functions are when creating the EABI unwind tables.
|
#
239268 |
|
15-Aug-2012 |
gonzo |
Merging projects/armv6, part 1
Cummulative patch of changes that are not vendor-specific: - ARMv6 and ARMv7 architecture support - ARM SMP support - VFP/Neon support - ARM Generic Interrupt Controller driver - Simplification of startup code for all platforms
|
#
172613 |
|
13-Oct-2007 |
cognet |
Define _ARM_ARCH_5E too, so that we know if pld/strd/ldrd are available.
MFC After: 3 days
|
#
169768 |
|
19-May-2007 |
cognet |
Use __mcount() instead of _mcount() to reduce diffs with NetBSD.
|
#
161735 |
|
30-Aug-2006 |
cognet |
Remove dead code, already defined in sys/cdef.h
Spotted out by: bde
|
#
139735 |
|
05-Jan-2005 |
imp |
Start all license statements with /*-
|
#
137462 |
|
09-Nov-2004 |
cognet |
Import a RET macro, that will use bx if the arch supports it.
Obtained from: NetBSD
|
#
135659 |
|
23-Sep-2004 |
cognet |
We are using _mcount, not __mcount. Remove the !__ELF__ case.
|
#
129198 |
|
14-May-2004 |
cognet |
Import FreeBSD/arm kernel bits. It only supports sa1110 (on simics) right now, but xscale support should come soon. Some of the initial work has been provided by : Stephane Potvin <sepotvin at videotron.ca> Most of this comes from NetBSD.
|