diff options
author | Matt Turner <mattst88@gmail.com> | 2015-07-12 00:13:45 -0700 |
---|---|---|
committer | Matt Turner <mattst88@gmail.com> | 2015-07-29 09:34:51 -0700 |
commit | c1da15709a0c0c2775bd9e534f67c60f7dc95ce8 (patch) | |
tree | 67fa5a5d7ad58315d8ca012239f5a83e74fd668d /src/mesa/drivers/dri/i965/gen7_urb.c | |
parent | c67ce2bd3b27a26d7f5665f296d307c0de39b720 (diff) |
i965: Use float calculations when double is unnecessary.
Literals without an f/F suffix are of type double, and implicit
conversion rules specify that the float in (float op double) be
converted to a double before the operation is performed. I believe float
execution was intended (in nearly all cases) or is sufficient (in the
case of gen7_urb.c).
Removes a lot of float <-> double conversion instructions and replaces
many double instructions with float instructions which are cheaper.
text data bss dec hex filename
4928659 195160 26192 5150011 4e953b i965_dri.so before
4928315 195152 26192 5149659 4e93db i965_dri.so after
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Diffstat (limited to 'src/mesa/drivers/dri/i965/gen7_urb.c')
-rw-r--r-- | src/mesa/drivers/dri/i965/gen7_urb.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/mesa/drivers/dri/i965/gen7_urb.c b/src/mesa/drivers/dri/i965/gen7_urb.c index d371c193577..69162171c4e 100644 --- a/src/mesa/drivers/dri/i965/gen7_urb.c +++ b/src/mesa/drivers/dri/i965/gen7_urb.c @@ -228,7 +228,7 @@ gen7_upload_urb(struct brw_context *brw) remaining_space = total_wants; if (remaining_space > 0) { unsigned vs_additional = (unsigned) - round(vs_wants * (((double) remaining_space) / total_wants)); + roundf(vs_wants * (((float) remaining_space) / total_wants)); vs_chunks += vs_additional; remaining_space -= vs_additional; gs_chunks += remaining_space; |