arla 0.42 on NetBSD/vax 3.0: success

Jonathan A. Kollasch jakllsch at kollasch.net
Mon Jun 12 06:33:39 CEST 2006


Hi,

For no real reason I've tested Arla on NetBSD/vax 3.0.  Included is the
fixes to get lwp/process.vax.S to assemble with the current toolchain
and fix some function name changes.

(I should note that this is the first time I've modified VAX assembly
code, the fixes were based on the syntax of the .S code in NetBSD.)

Also, configure (which took over a half hour) made one or
two mistakes that I just overrode manually in config.h.

In the hour or so that I've tested this (only in read mode) I've
not had any problems.

Great work on creating such a portable package.  Perhaps
on another weekend I'll try out Arla on NetBSD/pmax.

	Jonathan Kollasch
-------------- next part --------------
--- /tmp/arla-0.42/lwp/process.vax.S	2000-01-01 20:11:20.000000000 -0600
+++ arla-0.42/lwp/process.vax.S	2006-06-11 17:56:36.000000000 -0500
@@ -65,26 +65,26 @@
 	.set	area1,8
 	.set	newsp,12
 
-.globl	_PRE_Block
-.globl	_savecontext
+.globl	PRE_Block
+.globl	savecontext
 
-_savecontext:
+savecontext:
 	.word 0x0ffc	# Save regs R2-R11
-	movb	$1,_PRE_Block		# Critical section for preemption code
-   	pushl	ap			# save old ap
-	pushl	fp			# save old fp    
-	movl	area1(ap),r0		# r0 = base of savearea
-	movl	sp,topstack(r0)		# area->topstack = sp
-	movl	newsp(ap),r0		# Get new sp
+	movb	$1,PRE_Block		# Critical section for preemption code
+   	pushl	%ap			# save old ap
+	pushl	%fp			# save old fp    
+	movl	area1(%ap),%r0		# r0 = base of savearea
+	movl	%sp,topstack(%r0)		# area->topstack = sp
+	movl	newsp(%ap),%r0		# Get new sp
 	beql	L1			# if new sp is 0, dont change stacks
-	movl	r0,sp			# else switch to new stack
+	movl	%r0,%sp			# else switch to new stack
 L1:
-	movl	f(ap),r1		# r1 = f
-	calls	$0,0(r1)		# f()
+	movl	f(%ap),%r1		# r1 = f
+	calls	$0,0(%r1)		# f()
 
 /* It is impossible to be here, so abort() */
 
-	calls	$0,_abort
+	calls	$0,abort
 
 /*
 # returnto(area2)
@@ -94,15 +94,15 @@
 /* Stack offset of argument */
 	.set	area2,4
 
-	.globl _returnto
-_returnto:
+	.globl returnto
+returnto:
 	.word	0x0			# Who cares about these regs?
-	movl	area2(ap),r0		# r0 = address of area2
-	movl	topstack(r0),sp		# Restore sp
-	movl	(sp)+,fp		# Restore fp
-	movl	(sp)+,ap		# ,,,,
-	clrb	_PRE_Block		# End of preemption critical section
+	movl	area2(%ap),%r0		# r0 = address of area2
+	movl	topstack(%r0),%sp		# Restore sp
+	movl	(%sp)+,%fp		# Restore fp
+	movl	(%sp)+,%ap		# ,,,,
+	clrb	PRE_Block		# End of preemption critical section
 	ret
 
 	pushl	$1234			# I will gloat, Kazar
-	calls	$0,_abort
+	calls	$0,abort
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 186 bytes
Desc: not available
Url : http://lists.stacken.kth.se/pipermail/arla-drinkers/attachments/20060612/544a227d/attachment.bin


More information about the Arla-drinkers mailing list