git: 9front

Download patch

ref: 3803159ff3dc65fb5bc85b205acdd6c220728225
parent: 42467d7481bc331c918624162771a54e80c04548
author: Ori Bernstein <ori@eigenstate.org>
date: Fri Sep 22 19:02:40 EDT 2023

libmach: set errstr if we can't find a SP for a PC

this makes acid errors when you jump off the deep end
a bit less confusing.

--- a/sys/src/libmach/8db.c
+++ b/sys/src/libmach/8db.c
@@ -127,6 +127,8 @@
 		if(++i > 1000)
 			break;
 	}
+	if(i == 0)
+		werrstr("no SP for PC %#llux", pc);
 	return i;
 }
 
--- a/sys/src/libmach/machdata.c
+++ b/sys/src/libmach/machdata.c
@@ -359,6 +359,8 @@
 		if(++i > 40)
 			break;
 	}
+	if(i == 0)
+		werrstr("no SP for PC %#llux", pc);
 	return i;
 }
 
@@ -395,6 +397,8 @@
 		if(++i > 40)
 			break;
 	}
+	if(i == 0)
+		werrstr("no SP for PC %#llux", pc);
 	return i;
 }
 
--