diff options
Diffstat (limited to 'gas/testsuite/gas/ppc/simpshft.s')
-rw-r--r-- | gas/testsuite/gas/ppc/simpshft.s | 110 |
1 files changed, 110 insertions, 0 deletions
diff --git a/gas/testsuite/gas/ppc/simpshft.s b/gas/testsuite/gas/ppc/simpshft.s new file mode 100644 index 0000000000..39ff98d07b --- /dev/null +++ b/gas/testsuite/gas/ppc/simpshft.s @@ -0,0 +1,110 @@ +# These are all the examples from section F.4 of +# "PowerPC Microprocessor Family: The Programming Environments". +# 64-bit examples + extrdi %r4,%r3,1,0 + insrdi %r3,%r4,1,0 + sldi %r5,%r5,8 + clrldi %r4,%r3,32 +# 32-bit examples + extrwi %r4,%r3,1,0 + insrwi %r3,%r4,1,0 + slwi %r5,%r5,8 + clrlwi %r4,%r3,16 + + +# These test the remaining corner cases for 64-bit operations. + extldi %r4,%r3,1,0 + extldi %r4,%r3,64,0 + extldi %r4,%r3,1,63 + extldi %r4,%r3,64,63 # bit weird, that one. + + extrdi %r4,%r3,63,0 + extrdi %r4,%r3,1,62 + + insrdi %r4,%r3,64,0 + insrdi %r4,%r3,63,0 + insrdi %r4,%r3,1,62 + insrdi %r4,%r3,1,63 + + rotldi %r4,%r3,0 + rotldi %r4,%r3,1 + rotldi %r4,%r3,63 + + rotrdi %r4,%r3,0 + rotrdi %r4,%r3,1 + rotrdi %r4,%r3,63 + + rotld %r5,%r3,%r4 + + sldi %r4,%r3,0 + sldi %r4,%r3,63 + + srdi %r4,%r3,0 + srdi %r4,%r3,1 + srdi %r4,%r3,63 + + clrldi %r4,%r3,0 + clrldi %r4,%r3,1 + clrldi %r4,%r3,63 + + clrrdi %r4,%r3,0 + clrrdi %r4,%r3,1 + clrrdi %r4,%r3,63 + + clrlsldi %r4,%r3,0,0 + clrlsldi %r4,%r3,1,0 + clrlsldi %r4,%r3,63,0 + clrlsldi %r4,%r3,63,1 + clrlsldi %r4,%r3,63,63 + +# These test the remaining corner cases for 32-bit operations. + extlwi %r4,%r3,1,0 + extlwi %r4,%r3,32,0 + extlwi %r4,%r3,1,31 + extlwi %r4,%r3,32,31 # bit weird, that one. + + extrwi %r4,%r3,31,0 + extrwi %r4,%r3,1,30 + + inslwi %r4,%r3,1,0 + inslwi %r4,%r3,32,0 + inslwi %r4,%r3,1,31 + + insrwi %r4,%r3,1,0 + insrwi %r4,%r3,32,0 + insrwi %r4,%r3,1,31 + + rotlwi %r4,%r3,0 + rotlwi %r4,%r3,1 + rotlwi %r4,%r3,31 + + rotrwi %r4,%r3,0 + rotrwi %r4,%r3,1 + rotrwi %r4,%r3,31 + + rotlw %r5,%r3,%r4 + + slwi %r4,%r3,0 + slwi %r4,%r3,1 + slwi %r4,%r3,31 + + srwi %r4,%r3,0 + srwi %r4,%r3,1 + srwi %r4,%r3,31 + + clrlwi %r4,%r3,0 + clrlwi %r4,%r3,1 + clrlwi %r4,%r3,31 + + clrrwi %r4,%r3,0 + clrrwi %r4,%r3,1 + clrrwi %r4,%r3,31 + + clrlslwi %r4,%r3,0,0 + clrlslwi %r4,%r3,1,0 + clrlslwi %r4,%r3,31,0 + clrlslwi %r4,%r3,31,1 + clrlslwi %r4,%r3,31,31 + +# Force alignment so that we pass the test on AIX + .p2align 3 |