summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristoph Bumiller <[email protected]>2011-02-22 21:50:17 +0100
committerChristoph Bumiller <[email protected]>2011-02-24 17:35:35 +0100
commitf01748355360ac98c772ce8b82ca0e6c2f94629a (patch)
tree737bcdc403a345188291b63a04f90f5a3037a600
parentcd47f10c901d7ac48843586432c2e592ed35eed3 (diff)
nvc0: kick out empty live ranges
They affect overlap tests even though they're actually empty.
-rw-r--r--src/gallium/drivers/nvc0/nvc0_pc_regalloc.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/gallium/drivers/nvc0/nvc0_pc_regalloc.c b/src/gallium/drivers/nvc0/nvc0_pc_regalloc.c
index d7213949483..f4afe083e2d 100644
--- a/src/gallium/drivers/nvc0/nvc0_pc_regalloc.c
+++ b/src/gallium/drivers/nvc0/nvc0_pc_regalloc.c
@@ -87,6 +87,9 @@ add_range_ex(struct nv_value *val, int bgn, int end, struct nv_range *new_range)
{
struct nv_range *range, **nextp = &val->livei;
+ if (bgn == end) /* [a, a) is invalid / empty */
+ return TRUE;
+
for (range = val->livei; range; range = range->next) {
if (end < range->bgn)
break; /* insert before */