1*8269e767SBrooks Davis/*- 2*8269e767SBrooks Davis * Copyright (c) 2015 Ruslan Bukin <br@bsdpad.com> 3*8269e767SBrooks Davis * All rights reserved. 4*8269e767SBrooks Davis * 5*8269e767SBrooks Davis * Portions of this software were developed by SRI International and the 6*8269e767SBrooks Davis * University of Cambridge Computer Laboratory under DARPA/AFRL contract 7*8269e767SBrooks Davis * FA8750-10-C-0237 ("CTSRD"), as part of the DARPA CRASH research programme. 8*8269e767SBrooks Davis * 9*8269e767SBrooks Davis * Portions of this software were developed by the University of Cambridge 10*8269e767SBrooks Davis * Computer Laboratory as part of the CTSRD Project, with support from the 11*8269e767SBrooks Davis * UK Higher Education Innovation Fund (HEIF). 12*8269e767SBrooks Davis * 13*8269e767SBrooks Davis * Redistribution and use in source and binary forms, with or without 14*8269e767SBrooks Davis * modification, are permitted provided that the following conditions 15*8269e767SBrooks Davis * are met: 16*8269e767SBrooks Davis * 1. Redistributions of source code must retain the above copyright 17*8269e767SBrooks Davis * notice, this list of conditions and the following disclaimer. 18*8269e767SBrooks Davis * 2. Redistributions in binary form must reproduce the above copyright 19*8269e767SBrooks Davis * notice, this list of conditions and the following disclaimer in the 20*8269e767SBrooks Davis * documentation and/or other materials provided with the distribution. 21*8269e767SBrooks Davis * 22*8269e767SBrooks Davis * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 23*8269e767SBrooks Davis * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 24*8269e767SBrooks Davis * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 25*8269e767SBrooks Davis * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 26*8269e767SBrooks Davis * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 27*8269e767SBrooks Davis * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 28*8269e767SBrooks Davis * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 29*8269e767SBrooks Davis * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 30*8269e767SBrooks Davis * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 31*8269e767SBrooks Davis * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 32*8269e767SBrooks Davis * SUCH DAMAGE. 33*8269e767SBrooks Davis */ 34*8269e767SBrooks Davis 35*8269e767SBrooks Davis#include <machine/asm.h> 36*8269e767SBrooks DavisENTRY(cerror) 37*8269e767SBrooks Davis addi sp, sp, -16 38*8269e767SBrooks Davis sd a0, 0(sp) 39*8269e767SBrooks Davis sd ra, 8(sp) 40*8269e767SBrooks Davis call _C_LABEL(__error) 41*8269e767SBrooks Davis ld a1, 0(sp) 42*8269e767SBrooks Davis ld ra, 8(sp) 43*8269e767SBrooks Davis sw a1, 0(a0) 44*8269e767SBrooks Davis li a0, -1 45*8269e767SBrooks Davis li a1, -1 46*8269e767SBrooks Davis addi sp, sp, 16 47*8269e767SBrooks Davis ret 48*8269e767SBrooks DavisEND(cerror) 49