From 3c5c4310a66a3ab889d9ab1578d84c82d569b553 Mon Sep 17 00:00:00 2001 From: Jeff Law Date: Sat, 28 Aug 1999 08:50:00 +0000 Subject: [PATCH] * gas/hppa/basic/basic.exp: * gas/hppa/basic/media.s: Add test cases for new instructions. --- gas/testsuite/ChangeLog | 3 +++ gas/testsuite/gas/hppa/basic/basic.exp | 33 +++++++++++++++++++------- gas/testsuite/gas/hppa/basic/media.s | 22 +++++++++++++++++ 3 files changed, 50 insertions(+), 8 deletions(-) diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index 1a59b243ab7..5ca3ac04969 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,5 +1,8 @@ Sat Aug 28 00:16:12 1999 Jerry Quinn + * gas/hppa/basic/basic.exp: + * gas/hppa/basic/media.s: Add test cases for new instructions. + * gas/hppa/basic/basic.exp (do_branch2,do_media): New. * gas/hppa/basic/branch2.s: New. * gas/hppa/basic/media.s: New. diff --git a/gas/testsuite/gas/hppa/basic/basic.exp b/gas/testsuite/gas/hppa/basic/basic.exp index 74462d7e887..508527e242e 100644 --- a/gas/testsuite/gas/hppa/basic/basic.exp +++ b/gas/testsuite/gas/hppa/basic/basic.exp @@ -2086,13 +2086,30 @@ proc do_media {} { # of instructions (as these tests to). while 1 { expect { - -re "^ +\[0-9\]+ 0000 096702CC\[^\n]*\n" { set x [expr $x+1] } - -re "^ +\[0-9\]+ 0004 0967074C\[^\n]*\n" { set x [expr $x+1] } - -re "^ +\[0-9\]+ 0008 0967078C\[^\n]*\n" { set x [expr $x+1] } - -re "^ +\[0-9\]+ 000c 096707CC\[^\n]*\n" { set x [expr $x+1] } - -re "^ +\[0-9\]+ 0010 0967054C\[^\n]*\n" { set x [expr $x+1] } - -re "^ +\[0-9\]+ 0014 0967058C\[^\n]*\n" { set x [expr $x+1] } - -re "^ +\[0-9\]+ 0018 096705CC\[^\n]*\n" { set x [expr $x+1] } + -re "^ +\[0-9\]+ 0000 096703CC\[^\n\]*\n" {set x [expr $x+1] } + -re "^ +\[0-9\]+ 0004 0967034C\[^\n\]*\n" {set x [expr $x+1] } + -re "^ +\[0-9\]+ 0008 0967030C\[^\n\]*\n" {set x [expr $x+1] } + -re "^ +\[0-9\]+ 000c 096702CC\[^\n\]*\n" {set x [expr $x+1] } + -re "^ +\[0-9\]+ 0010 F8078B4B\[^\n\]*\n" {set x [expr $x+1] } + -re "^ +\[0-9\]+ 0014 0967074C\[^\n\]*\n" {set x [expr $x+1] } + -re "^ +\[0-9\]+ 0018 0967078C\[^\n\]*\n" {set x [expr $x+1] } + -re "^ +\[0-9\]+ 001c 096707CC\[^\n\]*\n" {set x [expr $x+1] } + -re "^ +\[0-9\]+ 0020 F8E0CF4B\[^\n\]*\n" {set x [expr $x+1] } + -re "^ +\[0-9\]+ 0024 F8E0CF4B\[^\n\]*\n" {set x [expr $x+1] } + -re "^ +\[0-9\]+ 0028 F8E0CB4B\[^\n\]*\n" {set x [expr $x+1] } + -re "^ +\[0-9\]+ 002c 0967054C\[^\n\]*\n" {set x [expr $x+1] } + -re "^ +\[0-9\]+ 0030 0967058C\[^\n\]*\n" {set x [expr $x+1] } + -re "^ +\[0-9\]+ 0034 096705CC\[^\n\]*\n" {set x [expr $x+1] } + -re "^ +\[0-9\]+ 0038 0ACE01C9\[^\n\]*\n" {set x [expr $x+1] } + -re "^ +\[0-9\]+ 003c 0ACE0149\[^\n\]*\n" {set x [expr $x+1] } + -re "^ +\[0-9\]+ 0040 0ACE0109\[^\n\]*\n" {set x [expr $x+1] } + -re "^ +\[0-9\]+ 0044 FACE8409\[^\n\]*\n" {set x [expr $x+1] } + -re "^ +\[0-9\]+ 0048 FACEC409\[^\n\]*\n" {set x [expr $x+1] } + -re "^ +\[0-9\]+ 004c FACE8009\[^\n\]*\n" {set x [expr $x+1] } + -re "^ +\[0-9\]+ 0050 FACEC009\[^\n\]*\n" {set x [expr $x+1] } + -re "^ +\[0-9\]+ 0054 FAD60E49\[^\n\]*\n" {set x [expr $x+1] } + -re "^ +\[0-9\]+ 0058 FAD64A89\[^\n\]*\n" {set x [expr $x+1] } + -re "^ +\[0-9\]+ 005c FAD66309\[^\n\]*\n" {set x [expr $x+1] } -re "\[^\n\]*\n" { } timeout { perror "timeout\n"; break } eof { break } @@ -2104,7 +2121,7 @@ proc do_media {} { gas_finish # Did we find what we were looking for? If not, flunk it. - if [expr $x==7] then { pass $testname } else { fail $testname } + if [expr $x==24] then { pass $testname } else { fail $testname } } proc do_special {} { diff --git a/gas/testsuite/gas/hppa/basic/media.s b/gas/testsuite/gas/hppa/basic/media.s index debcb572079..e7f1e4470ec 100644 --- a/gas/testsuite/gas/hppa/basic/media.s +++ b/gas/testsuite/gas/hppa/basic/media.s @@ -16,10 +16,32 @@ ; immediate fields. We should also check the assorted field ; selectors to make sure they're handled correctly. + hadd %r7,%r11,%r12 + hadd,ss %r7,%r11,%r12 + hadd,us %r7,%r11,%r12 + havg %r7,%r11,%r12 + hshl %r7,13,%r11 hshladd %r7,1,%r11,%r12 hshladd %r7,2,%r11,%r12 hshladd %r7,3,%r11,%r12 + hshr %r7,13,%r11 + hshr,s %r7,13,%r11 + hshr,u %r7,13,%r11 hshradd %r7,1,%r11,%r12 hshradd %r7,2,%r11,%r12 hshradd %r7,3,%r11,%r12 + + hsub %r14,%r22,%r9 + hsub,ss %r14,%r22,%r9 + hsub,us %r14,%r22,%r9 + + mixh,l %r14,%r22,%r9 + mixh,r %r14,%r22,%r9 + mixw,l %r14,%r22,%r9 + mixw,r %r14,%r22,%r9 + + permh,0321 %r22,%r9 + permh,2222 %r22,%r9 + permh,3030 %r22,%r9 + -- 2.30.2