; Copyright 1996 Acorn Computers Ltd ; ; Licensed under the Apache License, Version 2.0 (the "License"); ; you may not use this file except in compliance with the License. ; You may obtain a copy of the License at ; ; http://www.apache.org/licenses/LICENSE-2.0 ; ; Unless required by applicable law or agreed to in writing, software ; distributed under the License is distributed on an "AS IS" BASIS, ; WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. ; See the License for the specific language governing permissions and ; limitations under the License. ; GBLL StrongARM GBLL SASTMhatbroken StrongARM SETL {TRUE} SASTMhatbroken SETL {TRUE} :LAND: StrongARM XOS_SynchroniseCodeAreas * &2006e XOS_CallASWIR12 * &20071 XOS_PlatformFeatures * &2006d [ StrongARM ;macro to synchronise to $Ncodewords words of code on (FD) stack MACRO SyncStackCode $Ncodewords STMFD sp!,{r0-r2,lr} MOV r0,#1 ;means range specified in r1,r2 ADD r1,sp,#4*4 ;start address (allowing for stacked r0-r2,lr) ADD r2,r1,#($Ncodewords-1)*4 ;end address (inclusive) for $Ncodewords words of code SWI XOS_SynchroniseCodeAreas ;do the necessary LDMFD sp!,{r0-r2,lr} MEND ] END