shithub: scc

Download patch

ref: 1aea31215a1c95497aaa919b1d88296f59fd8f2c
parent: fcbf1cde4363400a9f70641dad9dfc20fa890762
author: Roberto E. Vargas Caballero <k0ga@shike2.com>
date: Tue Jan 26 18:00:00 EST 2016

Fix letter for return statement

Return statement was using r which was also used by right shift.
The new letter is h (remeber backspace ^H).

--- a/cc1/code.c
+++ b/cc1/code.c
@@ -66,7 +66,7 @@
 	[OEFUN] = "}\n",
 	[OELOOP] = "\tb\n",
 	[OBLOOP] = "\te\n",
-	[ORET] = "\tr",
+	[ORET] = "\th",
 	[OPAR] = "p",
 	[OCALL] = "c",
 	[OFIELD] = "."
--- a/cc1/tests/test001.c
+++ b/cc1/tests/test001.c
@@ -13,7 +13,7 @@
 	#K00
 )
 	X4	Y7	'P	pP	cI
-	r	#I0
+	h	#I0
 }
 */
 
--- a/cc1/tests/test003.c
+++ b/cc1/tests/test003.c
@@ -6,17 +6,17 @@
 G2	F	"foo
 {
 \
-	r	#I2A
+	h	#I2A
 }
 G3	F	"bar
 {
 \
-	r	#I18
+	h	#I18
 }
 G4	F	"main
 {
 \
-	r	G2	cI
+	h	G2	cI
 }
 */
 
--- a/cc1/tests/test004.c
+++ b/cc1/tests/test004.c
@@ -23,9 +23,9 @@
 	A3	A3	A3	#I1	>I	+I	:I
 	A3	A3	A3	#I4	<I	+I	:I
 	j	L4	A3	#I4	=I
-	r	#I1
+	h	#I1
 L4
-	r	#I0
+	h	#I0
 }
 */
 
--- a/cc1/tests/test005.c
+++ b/cc1/tests/test005.c
@@ -13,9 +13,9 @@
 	A3	A3	~I	:I
 	A3	A3	_I	:I
 	j	L4	A3	#I2	=I
-	r	#I1
+	h	#I1
 L4
-	r	#I0
+	h	#I0
 }
 */
 
--- a/cc1/tests/test006.c
+++ b/cc1/tests/test006.c
@@ -11,7 +11,7 @@
 {
 \
 	j	L4	#I0
-	r	#I1
+	h	#I1
 	j	L5
 L4
 	j	L6	#I0
@@ -19,18 +19,18 @@
 L6
 	j	L8	#I1
 	j	L9	G1	gI	#I0	=I
-	r	#I1
+	h	#I1
 	j	L10
 L9
-	r	#I0
+	h	#I0
 L10
 	j	L11
 L8
-	r	#I1
+	h	#I1
 L11
 L7
 L5
-	r	#I1
+	h	#I1
 }
 */
 
--- a/cc1/tests/test007.c
+++ b/cc1/tests/test007.c
@@ -16,7 +16,7 @@
 	j	L4	A3	#I0	!I
 	b
 L5
-	r	A3
+	h	A3
 }
 */
 
--- a/cc1/tests/test008.c
+++ b/cc1/tests/test008.c
@@ -20,7 +20,7 @@
 	j	L6	A3	#I14	<I
 	b
 L7
-	r	A3	#I14	-I
+	h	A3	#I14	-I
 }
 */
 
--- a/cc1/tests/test009.c
+++ b/cc1/tests/test009.c
@@ -17,9 +17,9 @@
 	b
 L5
 	j	L7	A3	#IA	=I
-	r	#I1
+	h	#I1
 L7
-	r	#I0
+	h	#I0
 }
 */
 
--- a/cc1/tests/test010.c
+++ b/cc1/tests/test010.c
@@ -55,7 +55,7 @@
 	j	L15	#I1
 	b
 L16
-	r	A3	#IF	-I
+	h	A3	#IF	-I
 }
 */
 
--- a/cc1/tests/test011.c
+++ b/cc1/tests/test011.c
@@ -10,13 +10,13 @@
 \
 L3
 	j	L4
-	r	#I1
+	h	#I1
 L5
-	r	#I0
+	h	#I0
 L4
 L6
 	j	L5
-	r	#I1
+	h	#I1
 }
 */
 
--- a/cc1/tests/test012.c
+++ b/cc1/tests/test012.c
@@ -22,7 +22,7 @@
 L12
 	j	L13
 L14
-	r	#I1
+	h	#I1
 	j	L10
 L11
 	t	#2
@@ -34,11 +34,11 @@
 	t	#1
 	v	L9	#I0
 L7
-	r	#I2
+	h	#I2
 L13
 	s	L16	A3
 L17
-	r	#I3
+	h	#I3
 	j	L15
 L16
 	t	#1
@@ -48,7 +48,7 @@
 	A3	#I2	:I
 L20
 L21
-	r	#I4
+	h	#I4
 	j	L18
 L19
 	t	#1
@@ -56,11 +56,11 @@
 L18
 	s	L23	A3
 L24
-	r	A3
+	h	A3
 L25
-	r	#I1
+	h	#I1
 L26
-	r	#I1
+	h	#I1
 	j	L22
 L23
 	t	#3
--- a/cc1/tests/test014.c
+++ b/cc1/tests/test014.c
@@ -30,7 +30,7 @@
 R9	W	"j
 X10	I	"k
 T11	Z	"a
-	r	#I0
+	h	#I0
 }
 G14	F	"func2
 {
--- a/cc1/tests/test015.c
+++ b/cc1/tests/test015.c
@@ -18,8 +18,8 @@
 	j	L15
 A16	S2	"s
 A17	I	"s
-	r	A17
-	r	A16	M11	.S5	M6	.I	A16	M11	.S5	M10	.S8	M9	.I	+I
+	h	A17
+	h	A16	M11	.S5	M6	.I	A16	M11	.S5	M10	.S8	M9	.I	+I
 L15
 */
 
--- a/cc1/tests/test016.c
+++ b/cc1/tests/test016.c
@@ -16,14 +16,14 @@
 	A6	A4	'P	:P
 	A6	@I	#I0	:I
 	j	L7	A4	#I0	=I
-	r	#I1
+	h	#I1
 L7
 	A6	G1	'P	:P
 	A6	@I	#I0	:I
 	j	L8	A6	#P0	!I
-	r	#I1
+	h	#I1
 L8
-	r	#I0
+	h	#I0
 }
 G9	F	"func2
 {
@@ -38,7 +38,7 @@
 	A13	@P	@I	#I0	:I
 L14
 	A11	#P0	:P
-	r	A10
+	h	A10
 }
 */
 
--- a/cc1/tests/test017.c
+++ b/cc1/tests/test017.c
@@ -17,12 +17,12 @@
 	A12	M8	.P	@S2	M3	.I	#I1	:I
 	A12	M8	.P	@S2	M4	.I	#I2	:I
 	j	L13	A11	M3	.I	#I1	=I
-	r	#I1
+	h	#I1
 L13
 	j	L14	A11	M4	.I	#I2	=I
-	r	#I2
+	h	#I2
 L14
-	r	#I0
+	h	#I0
 }
 */
 
--- a/cc1/tests/test018.c
+++ b/cc1/tests/test018.c
@@ -18,18 +18,18 @@
 	A5	'P	#P4	+P	#P3	+P	@K	#K2	:K
 	A11	#I2	:I
 	j	L13	A5	'P	#P4	+P	#P3	+P	@K	gI	#I2	=I
-	r	#I1
+	h	#I1
 L13
 	j	L14	A7	#P4	+P	#P3	+P	@K	gI	#I2	=I
-	r	#I1
+	h	#I1
 L14
 	j	L15	A9	@K	gI	#I2	=I
-	r	#I1
+	h	#I1
 L15
 	j	L16	A11	#I2	=I
-	r	#I1
+	h	#I1
 L16
-	r	#I0
+	h	#I0
 }
 */
 
--- a/cc1/tests/test022.c
+++ b/cc1/tests/test022.c
@@ -26,7 +26,7 @@
 	A4	#N0	:N
 	A4	#N3	:N
 	A4	#N0	:N
-	r	#I0
+	h	#I0
 }
 */
 
--- a/cc1/tests/test023.c
+++ b/cc1/tests/test023.c
@@ -26,7 +26,7 @@
 	A4	#Z3	:Z
 	A4	#Z1	:Z
 	A4	#Z0	:Z
-	r	#I0
+	h	#I0
 }
 */
 
--- a/cc1/tests/test024.c
+++ b/cc1/tests/test024.c
@@ -24,7 +24,7 @@
 	A4	#OFFFFFFFFFFFFFFFF	:O
 	A4	#O3	:O
 	A4	#O0	:O
-	r	#I0
+	h	#I0
 }
 */
 
--- a/cc1/tests/test027.c
+++ b/cc1/tests/test027.c
@@ -14,7 +14,7 @@
 	#K00
 )
 	A5	Y6	'P	:P
-	r	A5	@K	gI
+	h	A5	@K	gI
 }
 */
 
--- a/cc1/tests/test028.c
+++ b/cc1/tests/test028.c
@@ -12,7 +12,7 @@
 	#"hi
 	#K00
 )
-	r	Y10	'P
+	h	Y10	'P
 }
 */
 
--- a/cc1/tests/test030.c
+++ b/cc1/tests/test030.c
@@ -17,9 +17,9 @@
 A12	I	"n
 \
 	j	L15	A9	M3	.I	A11	@S2	M3	.I	=I
-	r	#I0
+	h	#I0
 L15
-	r	A11	@S2	M4	.I	A12	+I
+	h	A11	@S2	M4	.I	A12	+I
 }
 G17	F	"main
 {
@@ -28,7 +28,7 @@
 	A18	M3	.I	A18	M4	.I	#I1	:I	:I
 	G14	A18	pS2	A18	'P	pP	#I2	pI	cI
 	G14	A18	pS2	A18	'P	pP	#I2	pI	#I1	pI	A18	pS2	A18	'P	pP	cI
-	r	#I0
+	h	#I0
 }
 */
 
--- a/cc1/tests/test032.c
+++ b/cc1/tests/test032.c
@@ -14,7 +14,7 @@
 )
 A7	P	"p
 	A7	Y8	'P	:P
-	r	A7	#P0	!I
+	h	A7	#P0	!I
 }
 */
 
--- a/cc1/tests/test034.c
+++ b/cc1/tests/test034.c
@@ -11,13 +11,13 @@
 {
 \
 X7	S2	"x
-	r	X7	'P	#P0	!I
+	h	X7	'P	#P0	!I
 }
 G5	F	"foo
 {
 \
 	X3	M9	.I	#I0	:I
-	r	X3	M9	.I
+	h	X3	M9	.I
 }
 X13	S11	"bar2
 */
--- a/cc1/tests/test035.c
+++ b/cc1/tests/test035.c
@@ -10,18 +10,18 @@
 A8	I	"e
 	A8	#I3	:I
 	j	L9	A8	#I1	=I
-	r	#I0
+	h	#I0
 L9
 	j	L10	A8	#I0	=I
-	r	#I1
+	h	#I1
 L10
 	j	L11	A8	#I2	=I
-	r	#I2
+	h	#I2
 L11
 	j	L12	A8	#I3	=I
-	r	#I3
+	h	#I3
 L12
-	r	#I0
+	h	#I0
 }
 */
 
--- a/cc1/tests/test037.c
+++ b/cc1/tests/test037.c
@@ -12,15 +12,15 @@
 {
 \
 	j	L3	#I0
-	r	#I1
+	h	#I1
 L3
 	j	L4	#I0
-	r	#I2
+	h	#I2
 L4
 	j	L5	#I0
-	r	#I3
+	h	#I3
 L5
-	r	#I0
+	h	#I0
 }
 */
 
--- a/cc1/tests/test038.c
+++ b/cc1/tests/test038.c
@@ -12,13 +12,13 @@
 G5	F	"foo
 {
 \
-	r	X3	'P
+	h	X3	'P
 }
 G3	F	"main
 {
 \
 	G1	#I0	:I
-	r	G1
+	h	G1
 }
 */
 
--- a/cc1/tests/test039.c
+++ b/cc1/tests/test039.c
@@ -27,7 +27,7 @@
 	A6	#Z0	:Z
 	A8	#O1	:O
 	A8	#O1	:O
-	r	#I0
+	h	#I0
 }
 */
 
--- a/cc1/tests/test040.c
+++ b/cc1/tests/test040.c
@@ -11,7 +11,7 @@
 M6	P	"head	#N2
 M7	P	"back	#N6
 A10	S2	"List
-	r	A10	M4	.I
+	h	A10	M4	.I
 }
 */
 
--- a/cc1/tests/test043.c
+++ b/cc1/tests/test043.c
@@ -11,7 +11,7 @@
 {
 \
 	G9	M6	.P	@F	c0
-	r	#I0
+	h	#I0
 }
 */
 
--- a/cc1/tests/test045.c
+++ b/cc1/tests/test045.c
@@ -10,9 +10,9 @@
 {
 \
 	j	L4	G1	#I5	=I
-	r	#I1
+	h	#I1
 L4
-	r	#I0
+	h	#I0
 }
 */
 
--- a/cc1/tests/test046.c
+++ b/cc1/tests/test046.c
@@ -13,15 +13,15 @@
 {
 \
 	j	L5	G2	#I1	=I
-	r	#I1
+	h	#I1
 L5
 	j	L7	G2	'P	#P2	+P	@I	#I2	=I
-	r	#I2
+	h	#I2
 L7
 	j	L8	G2	'P	#P4	+P	@I	#I3	=I
-	r	#I3
+	h	#I3
 L8
-	r	#I0
+	h	#I0
 }
 */
 
--- a/cc1/tests/test047.c
+++ b/cc1/tests/test047.c
@@ -16,15 +16,15 @@
 {
 \
 	j	L9	G6	M3	.I	#I1	=I
-	r	#I1
+	h	#I1
 L9
 	j	L10	G6	M4	.I	#I2	=I
-	r	#I2
+	h	#I2
 L10
 	j	L11	G6	M5	.I	#I3	=I
-	r	#I3
+	h	#I3
 L11
-	r	#I0
+	h	#I0
 }
 */
 
--- a/cc1/tests/test048.c
+++ b/cc1/tests/test048.c
@@ -15,12 +15,12 @@
 {
 \
 	j	L9	G6	M3	.I	#I1	=I
-	r	#I1
+	h	#I1
 L9
 	j	L11	G6	M4	.I	#I2	=I
-	r	#I2
+	h	#I2
 L11
-	r	#I0
+	h	#I0
 }
 */
 
--- a/cc1/tests/test049.c
+++ b/cc1/tests/test049.c
@@ -13,9 +13,9 @@
 {
 \
 	j	L6	G3	@I	#I5	=I
-	r	#I1
+	h	#I1
 L6
-	r	#I0
+	h	#I0
 }
 */
 
--- a/cc1/tests/test051.c
+++ b/cc1/tests/test051.c
@@ -13,15 +13,15 @@
 {
 \
 	j	L5	G2	#I0	=I
-	r	#I1
+	h	#I1
 L5
 	j	L7	G2	'P	#P2	+P	@I	#I1	=I
-	r	#I2
+	h	#I2
 L7
 	j	L8	G2	'P	#P4	+P	@I	#I2	=I
-	r	#I3
+	h	#I3
 L8
-	r	#I0
+	h	#I0
 }
 */
 
--- a/cc1/tests/test052.c
+++ b/cc1/tests/test052.c
@@ -17,18 +17,18 @@
 {
 \
 	j	L9	G6	M3	.I	#I1	=I
-	r	#I1
+	h	#I1
 L9
 	j	L11	G6	M4	.I	#I2	=I
-	r	#I2
+	h	#I2
 L11
 	j	L12	G6	'P	#P4	+P	@S2	M3	.I	#I3	=I
-	r	#I3
+	h	#I3
 L12
 	j	L13	G6	'P	#P4	+P	@S2	M4	.I	#I4	=I
-	r	#I4
+	h	#I4
 L13
-	r	#I0
+	h	#I0
 }
 */
 
--- a/cc1/tests/test053.c
+++ b/cc1/tests/test053.c
@@ -14,12 +14,12 @@
 {
 \
 	j	L8	G5	M3	.I	#I1	=I
-	r	#I1
+	h	#I1
 L8
 	j	L9	G5	M4	.I	#I2	=I
-	r	#I2
+	h	#I2
 L9
-	r	#I0
+	h	#I0
 }
 */
 
--- a/cc1/tests/test056.c
+++ b/cc1/tests/test056.c
@@ -25,7 +25,7 @@
 G13	F	"main
 {
 \
-	r	G9	M7	.V6	'P	#P2	+P	@K	gI	gN	#N0	!I
+	h	G9	M7	.V6	'P	#P2	+P	@K	gI	gN	#N0	!I
 }
 */
 
--- a/cc1/tests/test057.c
+++ b/cc1/tests/test057.c
@@ -25,7 +25,7 @@
 G6	F	"main
 {
 \
-	r	G3	'P	#P6	+P	#P4	+P	@I	G4	'P	#P6	+P	#P6	+P	@I	!I
+	h	G3	'P	#P6	+P	#P4	+P	@I	G4	'P	#P6	+P	#P6	+P	@I	!I
 }
 */
 
--- a/cc1/tests/test058.c
+++ b/cc1/tests/test058.c
@@ -41,7 +41,7 @@
 G6	F	"main
 {
 \
-	r	G4	'P	#PA	+P	#P8	+P	@I	G4	'P	#P1E	+P	#PA	+P	#P8	+P	@I	!I
+	h	G4	'P	#PA	+P	#P8	+P	@I	G4	'P	#P1E	+P	#PA	+P	#P8	+P	@I	!I
 }
 */
 
--- a/cc1/tests/test060.c
+++ b/cc1/tests/test060.c
@@ -6,7 +6,7 @@
 G2	F	"main
 {
 \
-	r	#I0
+	h	#I0
 }
 */
 
--- a/cc2/cc2.h
+++ b/cc2/cc2.h
@@ -78,7 +78,7 @@
 	OSTRING  = '"',
 	/*statements */
 	OJMP     = 'j',
-	ORET     = 'r',
+	ORET     = 'h',
 	OBLOOP   = 'b',
 	OELOOP   = 'e',
 	OCASE    = 'v',