]> git.donarmstrong.com Git - lilypond.git/blobdiff - guile18/qt/md/mips_b.s
Import guile-1.8 as multiple upstream tarball component
[lilypond.git] / guile18 / qt / md / mips_b.s
diff --git a/guile18/qt/md/mips_b.s b/guile18/qt/md/mips_b.s
new file mode 100644 (file)
index 0000000..5b37408
--- /dev/null
@@ -0,0 +1,99 @@
+/*
+ * QuickThreads -- Threads-building toolkit.
+ * Copyright (c) 1993 by David Keppel
+ *
+ * Permission to use, copy, modify and distribute this software and
+ * its documentation for any purpose and without fee is hereby
+ * granted, provided that the above copyright notice and this notice
+ * appear in all copies.  This software is provided as a
+ * proof-of-concept and for demonstration purposes; there is no
+ * representation about the suitability of this software for any
+ * purpose.
+ */
+
+       .globl b_call_reg
+       .globl b_call_imm
+       .globl b_add
+       .globl b_load
+
+       .ent b_null
+b_null:
+       j $31
+       .end b_null
+
+       .ent b_call_reg
+b_call_reg:
+       la $5,b_null
+       add $6, $31,0
+$L0:
+       jal $5
+       jal $5
+       jal $5
+       jal $5
+       jal $5
+
+       sub $4, $4,5
+       bgtz $4,$L0
+       j $6
+       .end
+
+
+       .ent b_call_imm
+b_call_imm:
+       add $6, $31,0
+$L1:
+       jal b_null
+       jal b_null
+       jal b_null
+       jal b_null
+       jal b_null
+
+       sub $4, $4,5
+       bgtz $4,$L1
+       j $6
+       .end
+
+
+       .ent b_add
+b_add:
+       add $5, $0,$4
+       add $6, $0,$4
+       add $7, $0,$4
+       add $8, $0,$4
+$L2:
+       sub $4, $4,5
+       sub $5, $5,5
+       sub $6, $6,5
+       sub $7, $7,5
+       sub $8, $8,5
+
+       sub $4, $4,5
+       sub $5, $5,5
+       sub $6, $6,5
+       sub $7, $7,5
+       sub $8, $8,5
+
+       bgtz $4,$L2
+       j $31
+       .end
+
+
+       .ent b_load
+b_load:
+$L3:
+       ld $0, 0($sp)
+       ld $0, 4($sp)
+       ld $0, 8($sp)
+       ld $0, 12($sp)
+       ld $0, 16($sp)
+
+       ld $0, 20($sp)
+       ld $0, 24($sp)
+       ld $0, 28($sp)
+       ld $0, 32($sp)
+       ld $0, 36($sp)
+
+       sub $4, $4,10
+       bgtz $4,$L3
+       j $31
+       .end