Home | History | Annotate | Download | only in include
History log of /src/sys/arch/sh3/include/asm.h
RevisionDateAuthorComments
 1.32  08-May-2025  uwe sh3: asm.h - no ## at token boundaries

For the ## "if the result is not a valid preprocessing token, the
behavior is undefined", so you 1) don't need to 2) must not use it to
concatenate a token with a non-token, like .arg or arg()

The point is kinda moot, as traditionally asm with cpp uses traditional
cpp, not ANSI cpp (many assemblers use # for literals, which conflicts
with the ANSI CPP # stringization and requires awkward workarounds),
but don't set a bad example even if it never gets called out by the
compiler.
 1.31  06-Jan-2025  martin PR 58960: fix misunderstanding in semantic and provide both the original
id string as well as _NETBSD_REVISIONID.
Do not rely on string concatenation in the inline assembler, use .ascii
and .asciz for individual string parts instead.
 1.30  04-Jan-2025  martin PR 58960: sh3/asm.h: Respect _NETBSD_REVISIONID.
 1.29  17-Apr-2020  joerg branches: 1.29.26;
Mark the .ident section as mergable string section to avoid redundant
entries.
 1.28  12-Sep-2013  joerg branches: 1.28.30; 1.28.40;
Pass PICFLAGS down to cc-as-as and use __PIC__ to decide if it is small
vs big PIC mode. Retire -DPIC and -DBIGPIC.
 1.27  20-Dec-2010  joerg branches: 1.27.8; 1.27.18; 1.27.22;
Consistently use .gnu.warning with .pushsectio and .popsection on all
architectures instead of obsolete STABS frames for linker warnings.
 1.26  19-Sep-2008  uwe branches: 1.26.16;
Use pushsection/popsection for RCSID.
 1.25  20-Jan-2006  christos branches: 1.25.72; 1.25.76; 1.25.78; 1.25.82;
Add a STRONG_ALIAS macro
 1.24  06-Jan-2006  uwe Provide PIC_EPILOGUE_SLOT that is safe to use in delay slot.
 1.23  05-Jan-2006  uwe Introduce PIC_PROLOGUE_NOSAVE for functions that do non-local jumps
and don't need to save/restore r12. Shaves off two instructions.
 1.22  05-Jan-2006  uwe mova can only have r0 as destination, so PIC_PROLOGUE can not specify
an arbitrary temp register.
 1.21  05-Jan-2006  uwe Macros for .size directive.
 1.20  31-Dec-2005  uwe First cut at PIC macros.
 1.19  24-Dec-2005  uwe branches: 1.19.2;
Implement WARN_REFERENCES.
 1.18  24-Dec-2005  uwe Prettify.
 1.17  11-Dec-2005  christos merge ktrace-lwp.
 1.16  24-Nov-2003  uwe branches: 1.16.14; 1.16.16;
Definition of __KERNEL_RCSID for asm files.
 1.15  27-Aug-2003  uwe Bring _PROF_PROLOGUE back. The breakage was caused by calls to
__udivsi3 being treated specially by gcc.
 1.14  10-Aug-2003  uwe Undo previous. It breaks profiling, but I managed to test against the
wrong tree and so missed it.
 1.13  10-Aug-2003  uwe Real _PROF_PROLOGUE so that assembly language functions can be profiled.
 1.12  09-Aug-2003  uwe For ELF put RCSID strings into .ident section.
 1.11  07-Aug-2003  agc Move UCB-licensed code from 4-clause to 3-clause licence.

Patches provided by Joel Baker in PR 22364, verified by myself.
 1.10  28-Apr-2002  uch branches: 1.10.6; 1.10.12;
Use "#define<tab>", white space nits.
 1.9  17-Mar-2002  uch cosmetic changes, fix comments.
 1.8  16-Dec-2001  thorpej Consider __NO_LEADING_UNDERSCORES__ provided by the new ELF toolchain.
 1.7  10-Jun-2001  msaitoh branches: 1.7.2;
.type xxx,@function isn't supported under COFF
 1.6  09-Apr-2001  marcus Altentries should also be marked as functions, to keep linker happy.
 1.5  09-Apr-2001  marcus Mark syscalls as functions.
 1.4  25-Feb-2001  msaitoh branches: 1.4.2;
check __LEADING_UNDERSCORE
 1.3  14-Dec-2000  marcus Made weak_alias create correct labels on sh-elf.
 1.2  23-Jun-2000  kleink Add a WEAK_ALIAS() macro.
 1.1  13-Sep-1999  itojun branches: 1.1.2; 1.1.12;
Merge in NetBSD/sh3 from cvs.kame.net repository.

Tree structure:
- sys/arch/sh3: sh3 generic code
As commented, in-chip device drivers are put into sys/arch/sh3/dev.
- sys/arch/evbsh3: sh3 evaluation boards (pure sh3 CPU, no fancy external HW)
- sys/arch/mmeye: Brains mmEye, www.brains.co.jp
MI source code includes couple of #ifdef for sh3-coff support.
(sh3 uses coff or elf)

Needs some more improvements, especialy in sys/arch/sh3/conf/files.sh3,
to compile the tree (due to last minute tree structure change).
 1.1.12.1  25-Jul-2000  kleink Pull up rev. 1.2 (approved by thorpej):
For ELF, add a WEAK_ALIAS() macro.
 1.1.2.4  21-Apr-2001  bouyer Sync with HEAD
 1.1.2.3  12-Mar-2001  bouyer Sync with HEAD.
 1.1.2.2  05-Jan-2001  bouyer Sync with HEAD
 1.1.2.1  20-Nov-2000  bouyer Update thorpej_scsipi to -current as of a month ago
A i386 GENERIC kernel compiles without the siop, ahc and bha drivers
(will be updated later). i386 IDE/ATAPI and ncr work, as well as
sparc/esp_sbus. alpha should work as well (untested yet).
siop, ahc and bha will be updated once I've updated the branch to current
-current, as well as machine-dependant code.
 1.4.2.1  21-Jun-2001  nathanw Catch up to -current.
 1.7.2.2  23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.7.2.1  10-Jan-2002  thorpej Sync kqueue branch with -current.
 1.10.12.3  21-Sep-2004  skrll Fix the sync with head I botched.
 1.10.12.2  18-Sep-2004  skrll Sync with HEAD.
 1.10.12.1  03-Aug-2004  skrll Sync with HEAD
 1.10.6.2  28-Apr-2002  uch Use "#define<tab>", white space nits.
 1.10.6.1  28-Apr-2002  uch file asm.h was added on branch nathanw_sa on 2002-04-28 17:10:34 +0000
 1.16.16.1  21-Jun-2006  yamt sync with head.
 1.16.14.7  11-Jan-2006  tron Pull up following revision(s) (requested by uwe in ticket #1094):
sys/arch/sh3/include/asm.h: revision 1.24
Provide PIC_EPILOGUE_SLOT that is safe to use in delay slot.
 1.16.14.6  11-Jan-2006  tron Pull up following revision(s) (requested by uwe in ticket #1094):
sys/arch/sh3/include/asm.h: revision 1.23
Introduce PIC_PROLOGUE_NOSAVE for functions that do non-local jumps
and don't need to save/restore r12. Shaves off two instructions.
 1.16.14.5  11-Jan-2006  tron Pull up following revision(s) (requested by uwe in ticket #1094):
sys/arch/sh3/include/asm.h: revision 1.22
mova can only have r0 as destination, so PIC_PROLOGUE can not specify
an arbitrary temp register.
 1.16.14.4  11-Jan-2006  tron Pull up following revision(s) (requested by uwe in ticket #1094):
sys/arch/sh3/include/asm.h: revision 1.21
Macros for .size directive.
 1.16.14.3  11-Jan-2006  tron Pull up following revision(s) (requested by uwe in ticket #1094):
sys/arch/sh3/include/asm.h: revision 1.20
First cut at PIC macros.
 1.16.14.2  11-Jan-2006  tron Pull up following revision(s) (requested by uwe in ticket #1094):
sys/arch/sh3/include/asm.h: revision 1.19
Implement WARN_REFERENCES.
 1.16.14.1  11-Jan-2006  tron Pull up following revision(s) (requested by uwe in ticket #1094):
sys/arch/sh3/include/asm.h: revision 1.18
Prettify.
 1.19.2.2  01-Feb-2006  yamt sync with head.
 1.19.2.1  15-Jan-2006  yamt sync with head.
 1.25.82.1  19-Oct-2008  haad Sync with HEAD.
 1.25.78.1  24-Sep-2008  wrstuden Merge in changes between wrstuden-revivesa-base-2 and
wrstuden-revivesa-base-3.
 1.25.76.1  04-May-2009  yamt sync with head.
 1.25.72.1  28-Sep-2008  mjf Sync with HEAD.
 1.26.16.1  05-Mar-2011  rmind sync with head
 1.27.22.1  18-May-2014  rmind sync with head
 1.27.18.1  20-Aug-2014  tls Rebase to HEAD as of a few days ago.
 1.27.8.1  22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.28.40.1  20-Apr-2020  bouyer Sync with HEAD
 1.28.30.1  21-Apr-2020  martin Sync with HEAD
 1.29.26.1  02-Aug-2025  perseant Sync with HEAD

RSS XML Feed