summary refs log tree commit diff
path: root/all.h
diff options
context:
space:
mode:
authorQuentin Carbonneaux <quentin.carbonneaux@yale.edu>2017-02-25 14:48:15 -0500
committerQuentin Carbonneaux <quentin.carbonneaux@yale.edu>2017-02-25 15:14:12 -0500
commit2c2db15995ce6c0f362d65e174d5a1b933057b80 (patch)
treec6faa1a0bbe472420be1372c9762f11be4403d8f /all.h
parente46b4e31e83f2f9d638ddffc5575795565f15e88 (diff)
downloadroux-2c2db15995ce6c0f362d65e174d5a1b933057b80.tar.gz
do sign/zero extensions removal in copy.c
Diffstat (limited to 'all.h')
-rw-r--r--all.h11
1 files changed, 10 insertions, 1 deletions
diff --git a/all.h b/all.h
index f518a36..e70bffb 100644
--- a/all.h
+++ b/all.h
@@ -228,7 +228,7 @@ enum Op {
 	Ostores,
 	Ostored,
 #define isstore(o) (Ostoreb <= o && o <= Ostored)
-	Oloadsb,  /* needs to match OExt (mem.c) */
+	Oloadsb,  /* must match Oext and Tmp.width */
 	Oloadub,
 	Oloadsh,
 	Oloaduh,
@@ -407,6 +407,15 @@ struct Tmp {
 	} hint;
 	int phi;
 	Alias alias;
+	enum {
+		WFull,
+		Wsb, /* must match Oload/Oext order */
+		Wub,
+		Wsh,
+		Wuh,
+		Wsw,
+		Wuw
+	} width;
 	int visit;
 };