diff options
author | Nick Clifton <nickc@redhat.com> | 2004-01-12 15:02:22 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2004-01-12 15:02:22 +0000 |
commit | ca9a79a174a35d35d26724cdc223facb1c913700 (patch) | |
tree | f0bd8bc540334a79b842cb3a60a70a5fcec58c0b /ld/testsuite/ld-h8300/relax-4.s | |
parent | a94154757c96c5e4fbba4b2846befbc70b7d10b7 (diff) | |
download | gdb-ca9a79a174a35d35d26724cdc223facb1c913700.zip gdb-ca9a79a174a35d35d26724cdc223facb1c913700.tar.gz gdb-ca9a79a174a35d35d26724cdc223facb1c913700.tar.bz2 |
Add support for relaxation of bit manipulation instructions.
Diffstat (limited to 'ld/testsuite/ld-h8300/relax-4.s')
-rw-r--r-- | ld/testsuite/ld-h8300/relax-4.s | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/ld/testsuite/ld-h8300/relax-4.s b/ld/testsuite/ld-h8300/relax-4.s new file mode 100644 index 0000000..32b5b06 --- /dev/null +++ b/ld/testsuite/ld-h8300/relax-4.s @@ -0,0 +1,72 @@ +; Relaxation is possible for following bit manipulation instructions
+; BAND, BCLR, BIAND, BILD, BIOR, BIST, BIXOR, BLD, BNOT, BOR, BSET, BST, BTST, BXOR
+ .h8300s
+ .globl _start
+ _start:
+ # s3-s6 aren't valid 16-bit addresses.
+ mov.b #0x3,r0l
+ mov.b #0x5,r2l
+;
+; Relaxation of aa:16
+;
+ bset r0l,@s10:16
+ bset r2l,@s9:16
+ btst r2l,@s10:16
+ btst r0l,@s9:16
+
+ bset #5,@s1:16
+ bset #5,@s2:16
+ bset #5,@s7:16
+ bset #5,@s8:16
+ bset #5,@s9:16
+ bset #5,@s10:16
+
+ band #5,@s1:16
+ band #5,@s2:16
+ band #5,@s7:16
+ band #5,@s8:16
+ band #5,@s9:16
+ band #5,@s10:16
+;
+; Relaxation of aa:32
+;
+ bset r2l,@s10:32
+ bset r0l,@s9:32
+ btst r0l,@s10:32
+ btst r2l,@s9:32
+
+ bset #6,@s1:32
+ bset #6,@s2:32
+ bset #6,@s3:32
+ bset #6,@s4:32
+ bset #6,@s5:32
+ bset #6,@s6:32
+ bset #6,@s7:32
+ bset #6,@s8:32
+ bset #6,@s9:32
+ bset #6,@s10:32
+
+ band #6,@s1:32
+ band #6,@s2:32
+ band #6,@s3:32
+ band #6,@s4:32
+ band #6,@s5:32
+ band #6,@s6:32
+ band #6,@s7:32
+ band #6,@s8:32
+ band #6,@s9:32
+ band #6,@s10:32
+
+ .equ s1,0
+ .equ s2,0x7fff
+ .equ s3,0x8000
+ .equ s4,0xff00
+ .equ s5,0xffff00
+ .equ s6,0xffff7fff
+ .equ s7,0xffff8000
+ .equ s8,0xfffffeff
+ .equ s9,0xffffff00
+ .equ s10,0xffffffff
+
+ .end
+
|