diff options
author | Matt Turner <[email protected]> | 2015-02-04 18:08:21 -0800 |
---|---|---|
committer | Matt Turner <[email protected]> | 2015-02-15 12:24:10 -0800 |
commit | e8a6f2ad65b03eac7c030b2cd4955a162739870b (patch) | |
tree | 44016d0434857474bc4ae0dbbe150506a38d9a28 /src | |
parent | 72b9f8db2a035b52dbd59af0d2a6441cbde11a4c (diff) |
i965: Add an is_negative_one() method.
Reviewed-by: Kenneth Graunke <[email protected]>
Reviewed-by: Ian Romanick <[email protected]>
Diffstat (limited to 'src')
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_shader.cpp | 16 | ||||
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_shader.h | 1 |
2 files changed, 17 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_shader.cpp b/src/mesa/drivers/dri/i965/brw_shader.cpp index ad2e22adbc0..f8769327883 100644 --- a/src/mesa/drivers/dri/i965/brw_shader.cpp +++ b/src/mesa/drivers/dri/i965/brw_shader.cpp @@ -732,6 +732,22 @@ backend_reg::is_one() const } bool +backend_reg::is_negative_one() const +{ + if (file != IMM) + return false; + + switch (type) { + case BRW_REGISTER_TYPE_F: + return fixed_hw_reg.dw1.f == -1.0; + case BRW_REGISTER_TYPE_D: + return fixed_hw_reg.dw1.d == -1; + default: + return false; + } +} + +bool backend_reg::is_null() const { return file == HW_REG && diff --git a/src/mesa/drivers/dri/i965/brw_shader.h b/src/mesa/drivers/dri/i965/brw_shader.h index 4b5c57364e8..7bff186dc49 100644 --- a/src/mesa/drivers/dri/i965/brw_shader.h +++ b/src/mesa/drivers/dri/i965/brw_shader.h @@ -51,6 +51,7 @@ struct backend_reg #ifdef __cplusplus bool is_zero() const; bool is_one() const; + bool is_negative_one() const; bool is_null() const; bool is_accumulator() const; #endif |