1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
;#################################################################
;# #
;# Copyright 2006, 2008 Fidelity Information Services, Inc #
;# #
;# This source code contains the intellectual property #
;# of its copyright holder(s), and is made available #
;# under a license. If you do not know the terms of #
;# the license, please stop and do not read further. #
;# #
;#################################################################
.title OP_CURRTN
g_msf
mval$def
$routine OP_CURRTN, entry=OP_CURRTN_CA, kind=null
lda sp, -16(sp)
stq r26, (sp)
.base r27, $ls
; Set r1->mval$b_mvtype to mval$m_str (r1->mvtype = MV_STR):
ldl r28, mval$w_mvtype(r1)
mskwl r28, mval$w_mvtype, r28
or r28, mval$m_str, r28
stl r28, mval$w_mvtype(r1)
ldl r0, msf$rvector_off(r12)
ldl r16, mrt$rtn_len(r0)
stl r16, mval$l_strlen(r1) ; r1->str.len = frame_pointer->rvector->routine_name.len
ldl r16, mrt$rtn_addr(r0)
stl r16, mval$a_straddr(r1) ; r1->str.addr = frame_pointer->rvector->routine_name.addr
ldq r26, (sp)
lda sp, 16(sp)
ret r26
$end_routine
.end
|