1@***************************************************************************** 2@* 3@* Copyright (c) 2008-2010, CoreCodec, Inc. 4@* All rights reserved. 5@* 6@* Redistribution and use in source and binary forms, with or without 7@* modification, are permitted provided that the following conditions are met: 8@* * Redistributions of source code must retain the above copyright 9@* notice, this list of conditions and the following disclaimer. 10@* * Redistributions in binary form must reproduce the above copyright 11@* notice, this list of conditions and the following disclaimer in the 12@* documentation and/or other materials provided with the distribution. 13@* * Neither the name of CoreCodec, Inc. nor the 14@* names of its contributors may be used to endorse or promote products 15@* derived from this software without specific prior written permission. 16@* 17@* THIS SOFTWARE IS PROVIDED BY CoreCodec, Inc. ``AS IS'' AND ANY 18@* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 19@* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 20@* DISCLAIMED. IN NO EVENT SHALL CoreCodec, Inc. BE LIABLE FOR ANY 21@* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 22@* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 23@* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 24@* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 25@* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 26@* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27@* 28@***************************************************************************** 29 30.global setjmp 31.global longjmp 32 33setjmp: 34 mov r12,#0 35 stmia r0,{r4-r12,sp,lr} 36 mov r0,#0 37 mov pc,lr 38 39longjmp: 40 ldmia r0!,{r4-r12,sp,lr} 41 movs r0,r1 42 moveq r0,#1 43 mov pc,lr 44