; 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. ; ; sources.jrevdctT - ObjAsm header for sources.jrevdct, for use in testing the implementation. ; See c.testdct for how to make use of this. r0 RN 0 r1 RN 1 r2 RN 2 r3 RN 3 r4 RN 4 r5 RN 5 r6 RN 6 r7 RN 7 r8 RN 8 r9 RN 9 r10 RN 10 r11 RN 11 r12 RN 12 sp RN 13 lr RN 14 pc RN 15 AREA |C$$code|, CODE, READONLY EXPORT asm_dct_1_d EXPORT asm_j_rev_dct GET sources.jrevdct ; ------------------------------------------------------------------------ ; Test proc - procedure to do a 1-D DCT ; ------------------------------------------------------------------------ ; extern void dct_1d(decompress_info_ptr cinfo, int *data); asm_dct_1_d STMDB sp!,{r0-r12,lr} ; save state MOV r9,r1 ; data pointer LDMIA r9,{r0-r7} ; get this row DCTransform dct1d DCTransform2 dct1d DCTransform3 dct1d dct1d_store STMIA r9!,{r0-r7} ; put this row dct1d_inc LDMIA sp!,{r0-r12,pc} ; exit DCTransform_Leftovers dct1d B dct1d_store DCTransform_Leftovers2 dct1d DCTransform3 dct1d B dct1d_store DCTransform_Leftovers3 dct1d DCTransform3 dct1d B dct1d_store DCTransform_Leftovers4 dct1d DCTransform3 dct1d B dct1d_store DCTransform_Leftovers5 dct1d DCTransform3 dct1d B dct1d_store END