9290838132
Fix segfault with zero length virtio-scsi disk (bz #847549)
60 lines
2.1 KiB
Diff
60 lines
2.1 KiB
Diff
From 848750a4acf9ea5c473be596d41720e702d770f0 Mon Sep 17 00:00:00 2001
|
|
From: Aurelien Jarno <aurelien@aurel32.net>
|
|
Date: Mon, 10 Sep 2012 23:51:42 +0200
|
|
Subject: [PATCH] tcg/optimize: remove TCG_TEMP_ANY
|
|
|
|
TCG_TEMP_ANY has no different meaning than TCG_TEMP_UNDEF, so use
|
|
the later instead.
|
|
|
|
Reviewed-by: Richard Henderson <rth@twiddle.net>
|
|
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
|
|
Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
|
|
---
|
|
tcg/optimize.c | 11 +++++------
|
|
1 file changed, 5 insertions(+), 6 deletions(-)
|
|
|
|
diff --git a/tcg/optimize.c b/tcg/optimize.c
|
|
index 1be7631..308b7f9 100644
|
|
--- a/tcg/optimize.c
|
|
+++ b/tcg/optimize.c
|
|
@@ -39,8 +39,7 @@ typedef enum {
|
|
TCG_TEMP_UNDEF = 0,
|
|
TCG_TEMP_CONST,
|
|
TCG_TEMP_COPY,
|
|
- TCG_TEMP_HAS_COPY,
|
|
- TCG_TEMP_ANY
|
|
+ TCG_TEMP_HAS_COPY
|
|
} tcg_temp_state;
|
|
|
|
struct tcg_temp_info {
|
|
@@ -52,7 +51,7 @@ struct tcg_temp_info {
|
|
|
|
static struct tcg_temp_info temps[TCG_MAX_TEMPS];
|
|
|
|
-/* Reset TEMP's state to TCG_TEMP_ANY. If TEMP was a representative of some
|
|
+/* Reset TEMP's state to TCG_TEMP_UNDEF. If TEMP was a representative of some
|
|
class of equivalent temp's, a new representative should be chosen in this
|
|
class. */
|
|
static void reset_temp(TCGArg temp, int nb_temps, int nb_globals)
|
|
@@ -69,7 +68,7 @@ static void reset_temp(TCGArg temp, int nb_temps, int nb_globals)
|
|
}
|
|
for (i = temps[temp].next_copy; i != temp; i = temps[i].next_copy) {
|
|
if (new_base == (TCGArg)-1) {
|
|
- temps[i].state = TCG_TEMP_ANY;
|
|
+ temps[i].state = TCG_TEMP_UNDEF;
|
|
} else {
|
|
temps[i].val = new_base;
|
|
}
|
|
@@ -81,9 +80,9 @@ static void reset_temp(TCGArg temp, int nb_temps, int nb_globals)
|
|
temps[temps[temp].prev_copy].next_copy = temps[temp].next_copy;
|
|
new_base = temps[temp].val;
|
|
}
|
|
- temps[temp].state = TCG_TEMP_ANY;
|
|
+ temps[temp].state = TCG_TEMP_UNDEF;
|
|
if (new_base != (TCGArg)-1 && temps[new_base].next_copy == new_base) {
|
|
- temps[new_base].state = TCG_TEMP_ANY;
|
|
+ temps[new_base].state = TCG_TEMP_UNDEF;
|
|
}
|
|
}
|
|
|