.code .align 4 ; Basic copr memory tests which also test the various ; addressing modes and completers. ; ; We could/should test some of the corner cases for register and ; immediate fields. We should also check the assorted field ; selectors to make sure they're handled correctly. ; copr_indexing_load: cldwx,4 %r5(%sr0,%r4),%r26 cldwx,4,s %r5(%sr0,%r4),%r26 cldwx,4,m %r5(%sr0,%r4),%r26 cldwx,4,sm %r5(%sr0,%r4),%r26 clddx,4 %r5(%sr0,%r4),%r26 clddx,4,s %r5(%sr0,%r4),%r26 clddx,4,m %r5(%sr0,%r4),%r26 clddx,4,sm %r5(%sr0,%r4),%r26 copr_indexing_store: cstwx,4 %r26,%r5(%sr0,%r4) cstwx,4,s %r26,%r5(%sr0,%r4) cstwx,4,m %r26,%r5(%sr0,%r4) cstwx,4,sm %r26,%r5(%sr0,%r4) cstdx,4 %r26,%r5(%sr0,%r4) cstdx,4,s %r26,%r5(%sr0,%r4) cstdx,4,m %r26,%r5(%sr0,%r4) cstdx,4,sm %r26,%r5(%sr0,%r4) copr_short_memory: cldws,4 0(%sr0,%r4),%r26 cldws,4,mb 0(%sr0,%r4),%r26 cldws,4,ma 0(%sr0,%r4),%r26 cldds,4 0(%sr0,%r4),%r26 cldds,4,mb 0(%sr0,%r4),%r26 cldds,4,ma 0(%sr0,%r4),%r26 cstws,4 %r26,0(%sr0,%r4) cstws,4,mb %r26,0(%sr0,%r4) cstws,4,ma %r26,0(%sr0,%r4) cstds,4 %r26,0(%sr0,%r4) cstds,4,mb %r26,0(%sr0,%r4) cstds,4,ma %r26,0(%sr0,%r4) ; gas fucks this up thinks it gets the expression 4 modulo 5 ; cldwx,4 %r5(0,%r4),%r%r26