Home | History | Annotate | Download | only in basic
      1 	.code
      2 	.align 4
      3 	.EXPORT integer_memory_tests,CODE
      4 	.EXPORT integer_indexing_load,CODE
      5 	.EXPORT integer_load_short_memory,CODE
      6 	.EXPORT integer_store_short_memory,CODE
      7 	.EXPORT main,CODE
      8 	.EXPORT main,ENTRY,PRIV_LEV=3,RTNVAL=GR
      9 ; Basic integer memory tests which also test the various
     10 ; addressing modes and completers.
     11 ;
     12 ; We could/should test some of the corner cases for register and
     13 ; immediate fields.  We should also check the assorted field
     14 ; selectors to make sure they're handled correctly.
     15 ;
     16 integer_memory_tests:
     17 	ldw 0(%sr0,%r4),%r26
     18 	ldh 0(%sr0,%r4),%r26
     19 	ldb 0(%sr0,%r4),%r26
     20 	stw %r26,0(%sr0,%r4)
     21 	sth %r26,0(%sr0,%r4)
     22 	stb %r26,0(%sr0,%r4)
     23 
     24 ; Should make sure pre/post modes are recognized correctly.
     25 	ldwm 0(%sr0,%r4),%r26
     26 	stwm %r26,0(%sr0,%r4)
     27 
     28 integer_indexing_load:
     29 	ldwx %r5(%sr0,%r4),%r26
     30 	ldwx,s %r5(%sr0,%r4),%r26
     31 	ldwx,m %r5(%sr0,%r4),%r26
     32 	ldwx,sm %r5(%sr0,%r4),%r26
     33 	ldhx %r5(%sr0,%r4),%r26
     34 	ldhx,s %r5(%sr0,%r4),%r26
     35 	ldhx,m %r5(%sr0,%r4),%r26
     36 	ldhx,sm %r5(%sr0,%r4),%r26
     37 	ldbx %r5(%sr0,%r4),%r26
     38 	ldbx,s %r5(%sr0,%r4),%r26
     39 	ldbx,m %r5(%sr0,%r4),%r26
     40 	ldbx,sm %r5(%sr0,%r4),%r26
     41 	ldwax %r5(%r4),%r26
     42 	ldwax,s %r5(%r4),%r26
     43 	ldwax,m %r5(%r4),%r26
     44 	ldwax,sm %r5(%r4),%r26
     45 	ldcwx %r5(%sr0,%r4),%r26
     46 	ldcwx,s %r5(%sr0,%r4),%r26
     47 	ldcwx,m %r5(%sr0,%r4),%r26
     48 	ldcwx,sm %r5(%sr0,%r4),%r26
     49 
     50 integer_load_short_memory:
     51 	ldws 0(%sr0,%r4),%r26
     52 	ldws,mb 0(%sr0,%r4),%r26
     53 	ldws,ma 0(%sr0,%r4),%r26
     54 	ldhs 0(%sr0,%r4),%r26
     55 	ldhs,mb 0(%sr0,%r4),%r26
     56 	ldhs,ma 0(%sr0,%r4),%r26
     57 	ldbs 0(%sr0,%r4),%r26
     58 	ldbs,mb 0(%sr0,%r4),%r26
     59 	ldbs,ma 0(%sr0,%r4),%r26
     60 	ldwas 0(%r4),%r26
     61 	ldwas,mb 0(%r4),%r26
     62 	ldwas,ma 0(%r4),%r26
     63 	ldcws 0(%sr0,%r4),%r26
     64 	ldcws,mb 0(%sr0,%r4),%r26
     65 	ldcws,ma 0(%sr0,%r4),%r26
     66 
     67 integer_store_short_memory:
     68 	stws %r26,0(%sr0,%r4)
     69 	stws,mb %r26,0(%sr0,%r4)
     70 	stws,ma %r26,0(%sr0,%r4)
     71 	sths %r26,0(%sr0,%r4)
     72 	sths,mb %r26,0(%sr0,%r4)
     73 	sths,ma %r26,0(%sr0,%r4)
     74 	stbs %r26,0(%sr0,%r4)
     75 	stbs,mb %r26,0(%sr0,%r4)
     76 	stbs,ma %r26,0(%sr0,%r4)
     77 	stwas %r26,0(%r4)
     78 	stwas,mb %r26,0(%r4)
     79 	stwas,ma %r26,0(%r4)
     80 	stbys %r26,0(%sr0,%r4)
     81 	stbys,b %r26,0(%sr0,%r4)
     82 	stbys,e %r26,0(%sr0,%r4)
     83 	stbys,b,m %r26,0(%sr0,%r4)
     84 	stbys,e,m %r26,0(%sr0,%r4)
     85