Mesa (master): i965: Optimize brw_inst_bits() and brw_compact_inst_bits().
Matt Turner
mattst88 at kemper.freedesktop.org
Tue Aug 11 22:09:53 UTC 2015
Module: Mesa
Branch: master
Commit: 9fa70fef22bd458fbeb95a3b0ebb5f7919cba7f0
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=9fa70fef22bd458fbeb95a3b0ebb5f7919cba7f0
Author: Matt Turner <mattst88 at gmail.com>
Date: Mon Aug 10 16:57:58 2015 -0700
i965: Optimize brw_inst_bits() and brw_compact_inst_bits().
Cuts about 1k of .text.
text data bss dec hex filename
5018165 197160 27672 5242997 500075 i965_dri.so before
5017141 197160 27672 5241973 4ffc75 i965_dri.so after
Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
---
src/mesa/drivers/dri/i965/brw_inst.h | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/src/mesa/drivers/dri/i965/brw_inst.h b/src/mesa/drivers/dri/i965/brw_inst.h
index 7a8c210..51082dc 100644
--- a/src/mesa/drivers/dri/i965/brw_inst.h
+++ b/src/mesa/drivers/dri/i965/brw_inst.h
@@ -683,9 +683,9 @@ brw_inst_bits(const brw_inst *inst, unsigned high, unsigned low)
high %= 64;
low %= 64;
- const uint64_t mask = (((1ull << (high - low + 1)) - 1) << low);
+ const uint64_t mask = (1ull << (high - low + 1)) - 1;
- return (inst->data[word] & mask) >> low;
+ return (inst->data[word] >> low) & mask;
}
/**
@@ -731,9 +731,9 @@ typedef struct {
static inline unsigned
brw_compact_inst_bits(brw_compact_inst *inst, unsigned high, unsigned low)
{
- const uint64_t mask = (((1ull << (high - low + 1)) - 1) << low);
+ const uint64_t mask = (1ull << (high - low + 1)) - 1;
- return (inst->data & mask) >> low;
+ return (inst->data >> low) & mask;
}
/**
More information about the mesa-commit
mailing list