OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /or1k/trunk/newlib/newlib/libc/machine/or32
    from Rev 71 to Rev 1765
    Reverse comparison

Rev 71 → Rev 1765

/setjmp.S
0,0 → 1,99
/* Simple setjmp/longjmp for the OpenRISC 1000 (OR32 ISA).
Damjan Lampret, OpenCores.org, Aug 15 2000. */
 
/* Until OR1K Arch is fixed, we just save entire register file. Should be fixed eventually. */
 
.align 4
.proc setjmp
.global setjmp
.extern setjmp
setjmp:
l.sw 0(r3),r1
l.sw 4(r3),r2
l.sw 8(r3),r3
l.sw 12(r3),r4
l.sw 16(r3),r5
l.sw 20(r3),r6
l.sw 24(r3),r7
l.sw 28(r3),r8
l.sw 32(r3),r9
l.sw 36(r3),r10
l.sw 40(r3),r11
l.sw 44(r3),r12
l.sw 48(r3),r13
l.sw 52(r3),r14
l.sw 56(r3),r15
l.sw 60(r3),r16
l.sw 64(r3),r17
l.sw 68(r3),r18
l.sw 72(r3),r19
l.sw 76(r3),r20
l.sw 80(r3),r21
l.sw 84(r3),r22
l.sw 88(r3),r23
l.sw 92(r3),r24
l.sw 96(r3),r25
l.sw 100(r3),r26
l.sw 104(r3),r27
l.sw 108(r3),r28
l.sw 112(r3),r29
l.sw 116(r3),r30
l.sw 120(r3),r31
/*
l.addi r4,r0,SPR_SR
l.mfsr r4,r4
l.sw 124(r3),r4
*/
l.jr r11
l.addi r3,r0,0
.endproc setjmp
 
.align 4
.proc longjmp
.global longjmp
longjmp:
l.lw r1,0(r3)
l.lw r2,4(r3)
l.lw r5,16(r3)
l.lw r6,20(r3)
l.lw r7,24(r3)
l.lw r8,28(r3)
l.lw r9,32(r3)
l.lw r10,36(r3)
l.lw r11,40(r3)
l.lw r12,44(r3)
l.lw r13,48(r3)
l.lw r14,52(r3)
l.lw r15,56(r3)
l.lw r16,60(r3)
l.lw r17,64(r3)
l.lw r18,68(r3)
l.lw r19,72(r3)
l.lw r20,76(r3)
l.lw r21,80(r3)
l.lw r22,84(r3)
l.lw r23,88(r3)
l.lw r24,92(r3)
l.lw r25,96(r3)
l.lw r26,100(r3)
l.lw r27,104(r3)
l.lw r28,108(r3)
l.lw r29,112(r3)
l.lw r30,116(r3)
l.lw r31,120(r3)
/*
l.lw r5,124(r3)
l.addi r3,r0,SPR_ESR_BASE
l.mtsr r3,r5
*/
l.lw r5,16(r3)
l.sfne r4,r0
l.bf 1f
l.nop
 
l.addi r3,r0,1
1: l.addi r3,r4,0
l.jr r11
l.nop
.endproc longjmp
/Makefile.in
0,0 → 1,48
# Makefile for newlib/libc/machine/or32.
# Copyright (c) 1994 Cygnus Support.
# All rights reserved.
#
# Redistribution and use in source and binary forms are permitted
# provided that the above copyright notice and this paragraph are
# duplicated in all such forms and that any documentation,
# advertising materials, and other materials related to such
# distribution and use acknowledge that the software was developed
# at Cygnus Support, Inc. Cygnus Support, Inc. may not be used to
# endorse or promote products derived from this software without
# specific prior written permission.
# THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
# IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
 
srcdir = .
 
SHELL = /bin/sh
 
TOP = ../../..
SRCTOP = ../../..
TARGETDOC = ../../targetdep.tex
 
#### Host, target, and site specific Makefile fragments come in here.
###
 
SFILES= setjmp.S
 
OFILES= setjmp.o
 
CFILES=
 
all: lib.a
lib.a: $(OFILES)
rm -f $@
$(AR) $(AR_FLAGS) $@ $(OFILES) $(COPYOFILES)
 
doc:
 
clean mostlyclean:
$(RM) $(OFILES) *~ lib.a
 
distclean maintainer-clean realclean: clean
rm -f Makefile config.status
 
Makefile: Makefile.in $(host_makefile_frag) $(target_makefile_frag)
$(SHELL) config.status

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.