	.CALL_ENTRY     MAX_ARGS=3, HOME_ARGS=TRUE, -
	INPUT=<R2,R3,R4,R5,R6,R7,R8,R9,R10,R11>, -
	PRESERVE=<R2,R3,R4,R5,R6,R7,R8,R9,R10,R11>, -
	LABEL=CTP_SUBQ
;++
;1 CTP_SUBQ
; Subrtract 2 quad values and return the quad difference. This routine
; uses AXP intruction and is NOT VAX compatible.
;2 Input
;  .address of quad val1
;  .address of quad val2
;  .address of quad val3
;2 Output
;  val3 = val1-val2
;2 Returns
;       SS$_NORMAL      OK
;
;--
	MOVL    	4(AP),R6                        ; Val1
	EVAX_LDQ        R7,(R6)                 ; Get 1st sample
	MOVL    	8(AP),R6                        ; Val2
	EVAX_LDQ        R8,(R6)                 ; Get 2nd sample
	EVAX_SUBQ       R8,R7,R9                      ; Curr - 1st
	EVAX_STQ        R9,@12(AP)              ; Return
	MOVL    	#SS$_NORMAL,R0
	RET
