git: 9front

Download patch

ref: 20fc36e2af47d4f6892b663b58299d9b98c1151f
parent: ea8e8b255ec88b51af31be5c01de8f55fd4c2e8a
author: BurnZeZ <devnull@localhost>
date: Sat Dec 1 13:07:40 EST 2018

libdtracy: wrong operator in XORI (thanks aiju)

--- a/sys/src/libdtracy/prog.c
+++ b/sys/src/libdtracy/prog.c
@@ -138,7 +138,7 @@
 		case DTE_XOR: R[c] = R[a] ^ R[b]; break;
 		case DTE_XNOR: R[c] = ~(R[a] ^ R[b]); break;
 		case DTE_LDI: R[c] = (s64int)ins << 40 >> 54 << (ins >> 8 & 63); break;
-		case DTE_XORI: R[c] |= (s64int)ins << 40 >> 54 << (ins >> 8 & 63); break;
+		case DTE_XORI: R[c] ^= (s64int)ins << 40 >> 54 << (ins >> 8 & 63); break;
 		case DTE_LSL:
 			if((u64int)R[b] >= 64)
 				R[c] = 0;
--