PREG never crosses setregs()
git-svn-id: https://yap.svn.sf.net/svnroot/yap/trunk@909 b08c6af1-5177-4d33-ba66-4b1c6b8b522a
This commit is contained in:
		| @@ -1075,14 +1075,17 @@ Yap_absmi(int inp) | |||||||
|       BOp(stale_lu_index, Ill); |       BOp(stale_lu_index, Ill); | ||||||
|       saveregs(); |       saveregs(); | ||||||
|       { |       { | ||||||
|  | 	yamop *ipc; | ||||||
|  |  | ||||||
| 	/* update ASP before calling IPred */ | 	/* update ASP before calling IPred */ | ||||||
| 	ASP = YREG+E_CB; | 	ASP = YREG+E_CB; | ||||||
| 	if (ASP > (CELL *) B) { | 	if (ASP > (CELL *) B) { | ||||||
| 	  ASP = (CELL *) B; | 	  ASP = (CELL *) B; | ||||||
| 	} | 	} | ||||||
| 	PREG = Yap_CleanUpIndex(PREG->u.Ill.I); | 	ipc = Yap_CleanUpIndex(PREG->u.Ill.I); | ||||||
| 	/* restart index */ | 	/* restart index */ | ||||||
| 	setregs(); | 	setregs(); | ||||||
|  | 	PREG = ipc; | ||||||
| 	CACHED_A1() = ARG1; | 	CACHED_A1() = ARG1; | ||||||
| 	JMPNext(); | 	JMPNext(); | ||||||
|       } |       } | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user