summaryrefslogtreecommitdiff
path: root/sparc_netbsd_mach_dep.s
diff options
context:
space:
mode:
authorIvan Maidanski <ivmai@mail.ru>2011-08-25 12:11:42 +0400
committerIvan Maidanski <ivmai@mail.ru>2011-08-25 12:11:42 +0400
commit30db5005d67bdcd8bfacd07201b21f20ef6f8b2d (patch)
treed42db85806be5c8e1dee5e1e26fa705ea625159c /sparc_netbsd_mach_dep.s
parentf73c7687a129ac0cb3918b4bd0186d9cb48aa0f3 (diff)
downloadbdwgc-30db5005d67bdcd8bfacd07201b21f20ef6f8b2d.tar.gz
Move asm machine-dependent files to "src" folder.
* .gitignore: Add entries from "src" folder; add auto-generated files by CMake; allow a suffix for "libatomic_ops" folder. * Makefile.direct (SRCS, mach_dep.o): Move sparc_mach_dep.S, sparc_sunos4_mach_dep.s, sparc_netbsd_mach_dep.s, ia64_save_regs_in_stack.s to "src" directory. * Makefile.dj (SRCS): Ditto. * configure.ac (machdep): Move sparc_mach_dep.lo, sparc_netbsd_mach_dep.lo, ia64_save_regs_in_stack.lo to "src" folder. * PCR-Makefile (mach_dep.o): Remove "if_mach" statement for MIPS. * PCR-Makefile (if_mach, if_not_there): Remove rules. * gc.mak (CPP_PROJ): Prefix libatomic_ops folder with "./".
Diffstat (limited to 'sparc_netbsd_mach_dep.s')
-rw-r--r--sparc_netbsd_mach_dep.s34
1 files changed, 0 insertions, 34 deletions
diff --git a/sparc_netbsd_mach_dep.s b/sparc_netbsd_mach_dep.s
deleted file mode 100644
index bc3f1603..00000000
--- a/sparc_netbsd_mach_dep.s
+++ /dev/null
@@ -1,34 +0,0 @@
-! SPARCompiler 3.0 and later apparently no longer handles
-! asm outside functions. So we need a separate .s file
-! This is only set up for SunOS 4.
-! Assumes this is called before the stack contents are
-! examined.
-
-#include "machine/asm.h"
-
- .seg "text"
- .globl _C_LABEL(GC_save_regs_in_stack)
- .globl _C_LABEL(GC_push_regs)
-_C_LABEL(GC_save_regs_in_stack):
-_C_LABEL(GC_push_regs):
- ta 0x3 ! ST_FLUSH_WINDOWS
- mov %sp,%o0
- retl
- nop
-
- .globl _C_LABEL(GC_clear_stack_inner)
-_C_LABEL(GC_clear_stack_inner):
- mov %sp,%o2 ! Save sp
- add %sp,-8,%o3 ! p = sp-8
- clr %g1 ! [g0,g1] = 0
- add %o1,-0x60,%sp ! Move sp out of the way,
- ! so that traps still work.
- ! Includes some extra words
- ! so we can be sloppy below.
-loop:
- std %g0,[%o3] ! *(long long *)p = 0
- cmp %o3,%o1
- bgu loop ! if (p > limit) goto loop
- add %o3,-8,%o3 ! p -= 8 (delay slot)
- retl
- mov %o2,%sp ! Restore sp., delay slot