Home | History | Annotate | Download | only in mt
      1 ;; This file is a set of tests for the MorphoySys instructions.
      2 
      3 ; Make sure that each mnemonic gives the proper opcode.  Use R0 and #0
      4 ; for all operands so that everything but the opcode will be 0 in the
      5 ; assembled instructions.
      6 
      7 	ldctxt R0,R0,#0,#0,#0
      8 	ldfb R0,R0,#0
      9 	stfb R0, R0, #0
     10 	fbcb R0,#0,#0,#0,#0,#0,#0,#0,#0
     11 	mfbcb R0,#0,R0,#0,#0,#0,#0,#0
     12 	fbcci R0,#0,#0,#0,#0,#0,#0,#0
     13 	fbrci R0,#0,#0,#0,#0,#0,#0,#0
     14 	fbcri R0,#0,#0,#0,#0,#0,#0,#0
     15 	fbrri R0,#0,#0,#0,#0,#0,#0,#0
     16 	mfbcci R0,#0,R0,#0,#0,#0,#0
     17 	mfbrci R0,#0,R0,#0,#0,#0,#0
     18 	mfbcri R0,#0,R0,#0,#0,#0,#0
     19 	mfbrri R0,#0,R0,#0,#0,#0,#0
     20 	fbcbdr R0,#0,R0,#0,#0,#0,#0,#0,#0,#0
     21 	rcfbcb #0,#0,#0,#0,#0,#0,#0,#0,#0,#0
     22 	mrcfbcb R0,#0,#0,#0,#0,#0,#0,#0,#0
     23 	cbcast #0,#0,#0
     24 	dupcbcast #0,#0,#0,#0
     25 	wfbi #0,#0,#0,#0,#0
     26 	wfb R0,R0,#0,#0,#0
     27 	rcrisc R0,#0,R0,#0,#0,#0,#0,#0,#0
     28 	fbcbinc R0, #0, #0, #0, #0, #0, #0, #0
     29 	rcxmode R0, #0, #0, #0, #0, #0, #0, #0, #0
     30 
     31 ; Check to make sure that the parse routines that allow predifined
     32 ; symbols (uppaer and lower case) to be used for some of the operands.
     33 
     34 ; dup operand: dup, xx
     35 	si R14
     36 	fbcbdr R0,#0,R0,#0,#0,#0,#0,#0,#dup,#0  ; dup = 1
     37 	fbcbdr R0,#0,R0,#0,#0,#0,#0,#0,#xx,#0   ; xx = 0
     38 	fbcbdr R0,#0,R0,#0,#0,#0,#0,#0,#DUP,#0
     39 	fbcbdr R0,#0,R0,#0,#0,#0,#0,#0,#XX,#0
     40 
     41 ; ball operand: all, one
     42 	si R14
     43 	rcfbcb #0,#0,#all,#0,#0,#0,#0,#0,#0,#0  ; all = 1
     44 	rcfbcb #0,#0,#one,#0,#0,#0,#0,#0,#0,#0  ; one = 0
     45 	rcfbcb #0,#0,#ALL,#0,#0,#0,#0,#0,#0,#0
     46 	rcfbcb #0,#0,#ONE,#0,#0,#0,#0,#0,#0,#0
     47 
     48 ; type operand: odd, even, oe
     49 	si R14
     50 	mrcfbcb R0,#0,#oe,#0,#0,#0,#0,#0,#0     ; oe = 2
     51 	mrcfbcb R0,#0,#even,#0,#0,#0,#0,#0,#0   ; even = 1
     52 	mrcfbcb R0,#0,#odd,#0,#0,#0,#0,#0,#0    ; odd = 0
     53 	mrcfbcb R0,#0,#OE,#0,#0,#0,#0,#0,#0
     54 	mrcfbcb R0,#0,#EVEN,#0,#0,#0,#0,#0,#0
     55 	mrcfbcb R0,#0,#ODD,#0,#0,#0,#0,#0,#0
     56 
     57 ; xmode operand: pm, xm
     58 	si R14
     59 	rcxmode R0, #0, #0, #pm, #0, #0, #0, #0, #0  ; pm = 1
     60 	rcxmode R0, #0, #0, #xm, #0, #0, #0, #0, #0  ; xm = 0
     61 	rcxmode R0, #0, #0, #PM, #0, #0, #0, #0, #0
     62 	rcxmode R0, #0, #0, #XM, #0, #0, #0, #0, #0
     63 
     64 ; rc, rc1, rc2 operands: r,c
     65 	si R14
     66         ldctxt R0,R0,#r,#0,#0            ; rc operand.  r = 1
     67         ldctxt R0,R0,#c,#0,#0            ; rc operand.  c = 0
     68         ldctxt R0,R0,#R,#0,#0
     69         ldctxt R0,R0,#C,#0,#0
     70 
     71 	fbcb R0,#0,#0,#0,#r,#0,#0,#0,#0  ; rc1 operand.  r = 1
     72 	fbcb R0,#0,#0,#0,#c,#0,#0,#0,#0  ; rc1 operand.  c = 0
     73 
     74 	cbcast #0,#r,#0                  ; rc2 operand.  r = 1
     75 	cbcast #0,#c,#0                  ; rc2 opearnd.  c = 0
     76 
     77 ; cbrb operand: cb, rb
     78 	si R14
     79 	fbcb R0,#0,#0,#0,#0,#rb,#0,#0,#0  ; rb = 1
     80 	fbcb R0,#0,#0,#0,#0,#cb,#0,#0,#0  ; cb = 0
     81 	fbcb R0,#0,#0,#0,#0,#RB,#0,#0,#0
     82 	fbcb R0,#0,#0,#0,#0,#CB,#0,#0,#0
     83 
     84 ; rbbc operand: rt, br1, br2, cs
     85 	si R14
     86 	fbcb R0,#cs,#0,#0,#0,#0,#0,#0,#0   ; cs = 3
     87 	fbcb R0,#br2,#0,#0,#0,#0,#0,#0,#0  ; br2 = 2
     88 	fbcb R0,#br1,#0,#0,#0,#0,#0,#0,#0  ; br1 = 1
     89 	fbcb R0,#rt,#0,#0,#0,#cb,#0,#0,#0  ; rt = 0
     90 	fbcb R0,#CS,#0,#0,#0,#0,#0,#0,#0
     91 	fbcb R0,#BR2,#0,#0,#0,#0,#0,#0,#0
     92 	fbcb R0,#BR1,#0,#0,#0,#0,#0,#0,#0
     93 	fbcb R0,#RT,#0,#0,#0,#cb,#0,#0,#0
     94 
     95 	intlvr R0, #0, R0, #0, #0
     96