| .SPACE $PRIVATE$ |
| .SUBSPA $DATA$,QUAD=1,ALIGN=8,ACCESS=31 |
| .SUBSPA $BSS$,QUAD=1,ALIGN=8,ACCESS=31,ZERO,SORT=82 |
| .SPACE $TEXT$ |
| .SUBSPA $LIT$,QUAD=0,ALIGN=8,ACCESS=44 |
| .SUBSPA $CODE$,QUAD=0,ALIGN=8,ACCESS=44,CODE_ONLY |
| |
| .SPACE $TEXT$ |
| .SUBSPA $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 |