diff --git a/usr/klibc/arch/alpha/pipe.S b/usr/klibc/arch/alpha/pipe.S
new file mode 100644
index 0000000..18244db
--- /dev/null
+++ b/usr/klibc/arch/alpha/pipe.S
@@ -0,0 +1,38 @@
+#
+# arch/alpha/pipe.S
+#
+
+#
+# pipe() on alpha returns both file descriptors in registers --
+# $0 (v0) and $20 (a4) respectively.  This is unlike any other system call,
+# as far as I can tell.
+#
+
+#include <asm/unistd.h>
+#include <machine/asm.h>
+
+	.text
+	.align	3
+	.type	pipe, @function
+	.ent	pipe, 0
+	.globl	pipe
+pipe:
+	.frame	sp,0,ra,0
+	lda	v0, __NR_pipe
+	callsys
+	beq	a3, 1f
+	br	pv, 2f			# pv <- pc
+2:
+	ldgp	gp, 0(pv)
+	lda	a1, errno
+	lda	v0, -1(zero)
+	stl	a3, 0(a1)
+	ret	zero,(ra),1
+1:
+	stl	v0, 0(a0)
+	mov	v0, zero
+	stl	a3, 4(a0)
+	ret	zero,(ra),1
+
+	.size	__syscall_dual1,.-__syscall_dual1
+	.end	__syscall_dual1
diff --git a/usr/klibc/arch/alpha/pipe.c b/usr/klibc/arch/alpha/pipe.c
deleted file mode 100644
index ca24360..0000000
--- a/usr/klibc/arch/alpha/pipe.c
+++ /dev/null
@@ -1,28 +0,0 @@
-#include <unistd.h>
-#include <sys/syscall.h>
-
-/* pipe() on alpha returns both file descriptors in registers --
-   $0 and $20 respectively.  This is unlike any other system call,
-   as far as I can tell. */
-
-int pipe(int *fds)
-{
-	register long sc_0 __asm__("$0");
-	register long sc_19 __asm__("$19");
-	register long sc_20 __asm__("$20");
-
-	sc_0 = __NR_pipe;
-	asm volatile ("callsys":"=r" (sc_0), "=r"(sc_19), "=r"(sc_20)
-		      :"0"(sc_0)
-		      :_syscall_clobbers);
-
-	if (sc_19) {
-		errno = sc_19;
-		return -1;
-	}
-
-	fds[0] = sc_0;
-	fds[1] = sc_20;
-
-	return 0;
-}
