aboutsummaryrefslogtreecommitdiff
path: root/sys/sparc64/include/asmacros.h
Commit message (Collapse)AuthorAgeFilesLines
* - Move the macros for generating load and store instructions to asmacros.hMarius Strobl2010-12-291-1/+14
| | | | | | | | | so they can be shared by different source files and extend them by a variant for atomic compare and swap. - Consistently use EMPTY. Notes: svn path=/head/; revision=216802
* Predict KASSERTs to be true.Marius Strobl2010-02-131-1/+1
| | | | Notes: svn path=/head/; revision=203846
* Remove filename+line number from panic messages.Poul-Henning Kamp2004-06-061-4/+2
| | | | Notes: svn path=/head/; revision=130164
* - Fix for sparc64 to use new __panic() functionKen Smith2004-01-271-2/+4
| | | | | | | | | Adapted from patch by: David Cornejo <dcornejo@firetide.com> Reviewed by: freebsd-sparc64 (harti) Approved by: rwatson (mentor) Notes: svn path=/head/; revision=125081
* add support for interrupt counting on sparc64. This copies part of theJohn-Mark Gurney2003-07-161-0/+11
| | | | | | | | | | | | code from i386. The code has a slight bogon that interrupts are counted twice. Once on the ithread dispatch and once on the dispatch for the vector vmstat -i and systat -vm now contains interrupt counts. Reviewed by: jake Notes: svn path=/head/; revision=117658
* I was wrong, the ENTRY bits in asm.h did have a purpose -- for userland.David E. O'Brien2003-04-261-38/+0
| | | | | | | | | | Restore the bits and remove them from asmacros.h. *.S will now be asm.h consumers. Approved by: jake Notes: svn path=/head/; revision=114085
* The ENTRY bits were in two places. Remove the one not used (asm.h), butDavid E. O'Brien2003-04-261-0/+11
| | | | | | | presurve the nice comment by adding it to asmacros.h. Notes: svn path=/head/; revision=114072
* Two tokens that don't together form a vaid preprocssor token cannot beDavid E. O'Brien2003-04-261-2/+2
| | | | | | | | pasted together using ANSI-C token concatinatation. GCC's cpp, at least, produces the desired result w/o using "##". Notes: svn path=/head/; revision=114071
* Add pmap support for user mappings of multiple page sizes (super pages).Jake Burkholder2002-08-181-5/+0
| | | | | | | | This supports all hardware page sizes (8K, 64K, 512K, 4MB), but only 8k pages are actually used as of yet. Notes: svn path=/head/; revision=102040
* Add _ALIGN_DATA and _ALIGN_TEXT macros.Jake Burkholder2002-07-291-1/+9
| | | | Notes: svn path=/head/; revision=100840
* Minor style.Jake Burkholder2002-05-251-3/+5
| | | | Notes: svn path=/head/; revision=97262
* Fix ifdef LOCORE protection.Jake Burkholder2002-03-131-4/+4
| | | | Notes: svn path=/head/; revision=92213
* Add an ATOMIC_CLEAR_INT macro.Jake Burkholder2002-03-131-2/+13
| | | | | | | Submitted by: tmm Notes: svn path=/head/; revision=92198
* Update comments and defines to reflect that normal and alternate g6 pointJake Burkholder2002-01-081-22/+52
| | | | | | | | | | to the current pcb. Remove interrupt global defines; they use PCPU_REG now. Move ATOMIC_INC_INT here from exception.s, add ATOMIC_DEC_INT. Add a KASSERT macro for use in assembler. Notes: svn path=/head/; revision=89032
* Add macros for dedicated register variables, for use in assmebler.Jake Burkholder2001-12-291-6/+33
| | | | | | | Add a PUTS macro. Notes: svn path=/head/; revision=88616
* Overhaul the per-CPU support a bit:John Baldwin2001-12-111-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - The MI portions of struct globaldata have been consolidated into a MI struct pcpu. The MD per-CPU data are specified via a macro defined in machine/pcpu.h. A macro was chosen over a struct mdpcpu so that the interface would be cleaner (PCPU_GET(my_md_field) vs. PCPU_GET(md.md_my_md_field)). - All references to globaldata are changed to pcpu instead. In a UP kernel, this data was stored as global variables which is where the original name came from. In an SMP world this data is per-CPU and ideally private to each CPU outside of the context of debuggers. This also included combining machine/globaldata.h and machine/globals.h into machine/pcpu.h. - The pointer to the thread using the FPU on i386 was renamed from npxthread to fpcurthread to be identical with other architectures. - Make the show pcpu ddb command MI with a MD callout to display MD fields. - The globaldata_register() function was renamed to pcpu_init() and now init's MI fields of a struct pcpu in addition to registering it with the internal array and list. - A pcpu_destroy() function was added to remove a struct pcpu from the internal array and list. Tested on: alpha, i386 Reviewed by: peter, jake Notes: svn path=/head/; revision=87702
* Implement SET. Set execption.s 1.12.Jake Burkholder2001-11-181-0/+12
| | | | | | | Submitted by: tmm Notes: svn path=/head/; revision=86524
* Implement PCPU_ADDR. Align functions on 16 bytes boundaries.Jake Burkholder2001-09-301-1/+4
| | | | Notes: svn path=/head/; revision=84176
* Gcc 3.0 requires a .register pseudo-op for certain global registers whenJake Burkholder2001-08-181-0/+5
| | | | | | | used in assembly language. Tell it to ignore the registers for now. Notes: svn path=/head/; revision=81893
* The author isn't a [UC] Regents. Correct the copyright language.David E. O'Brien2001-08-091-2/+2
| | | | Notes: svn path=/head/; revision=81334
* Flesh out the sparc64 port considerably. This contains:Jake Burkholder2001-07-311-0/+64
- mostly complete kernel pmap support, and tested but currently turned off userland pmap support - low level assembly language trap, context switching and support code - fully implemented atomic.h and supporting cpufunc.h - some support for kernel debugging with ddb - various header tweaks and filling out of machine dependent structures Notes: svn path=/head/; revision=80709