[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference vaxaxp::alphanotes

Title:Alpha Support Conference
Notice:This is a new Alphanotes, please read note 2.2
Moderator:VAXAXP::BERNARDO
Created:Thu Jan 02 1997
Last Modified:Fri Jun 06 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:128
Total number of notes:617

43.0. "Macro exec Pb..." by COPS02::LECORRE () Mon Feb 10 1997 11:40

Hi,

I have a Pb in that routine during execution 
And as usual I have to solve that pb fast.

All helps are welcome.

It seems related to the == movl (ap)[r6],r7 == 
in the find_last subroutine returning 
the wrong address in r7

 (pb with homing or I 've done something wrong ???) 

I have the homing in the calling subroutine

Thanks.

Christian

=================================================================================================================================

Caller


100$:	pushal	iis_str
 	pushal	nodename
 	pushal	node_res_name
 	calls	#3,g^utl$bld_string
 
===============================================================================================================================


utl$bld_string:: .call_entry	home_args=true,max_args=1

	movl	#2,r6			; Set r6 for second argument in list.
 	clrw	size_so_far		; Initialize the size_so_far variable.
 
 	movl	out_str(ap),r7		; Get the output argument address.
 	movzwl	(r7),out_size		; Get the output string size.
 	movl	4(r7),out_str_addr	; Get the output string address.
 	movc5	#0,#0,#^a/ /,out_size,@out_str_addr ; Initialize the output
 

 10$:	jsb	find_last		; Find last non-blank/non-tab character

==============================================================

find_last:	.jsb32_entry

===> Pb here    movl	(ap)[r6],r7 		; Get argument address.
	1.......                                                        
%AMAC-I-ARGLISHOME, (1) arglist must be homed in routine FIND_LAST

 	movl	4(r7),r8		; Get argument's string address.



 	movzwl	(r7),r7			; Get argument's string size.
 	bneq	10$			; If string size is not zero then find
					; the last non-blank/non-tab character.
 	rsb				; Otherwise, just return to main loop.


ACCvio ==> 10$:	cmpb	-1(r7)[r8],#^a/ /	; Is this character a space?
					1                                                                    
%AMAC-I-MEMREFNOT, (1) memory reference not naturally aligned in routine FIND_LAST

T.RTitleUserPersonal
Name
DateLines
43.1See MACRO32 conference.CPEEDY::FLEURYMon Feb 10 1997 12:176
    RE: .0
    
    This has been responded to in the MACRO32 conference.  Please keep the
    discussion there.
    
    Dan