diff options
author | Jeff King <peff@peff.net> | 2014-01-16 20:25:40 -0500 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2014-01-17 10:50:14 -0800 |
commit | cbfe47b67fc1072998c73e6d43cf6ad061a436f5 (patch) | |
tree | 6f1a19e2f892c7539214a399f1849b8e48c84893 | |
parent | diff_filespec: reorder is_binary field (diff) | |
download | tgif-cbfe47b67fc1072998c73e6d43cf6ad061a436f5.tar.xz |
diff_filespec: use only 2 bits for is_binary flag
The is_binary flag needs only three values: -1, 0, and 1.
However, we use a whole 32-bit int for it on most systems
(both 32- and 64- bit).
Instead, we can mark it to use only 2 bits. On 32-bit
systems, this lets it end up as part of the bitfield above
(saving 4 bytes). On 64-bit systems, we don't see any change
(because the savings end up as padding), but it does leave
room for another "free" 32-bit value to be added later.
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r-- | diffcore.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/diffcore.h b/diffcore.h index d911bf0a42..79de8cf28d 100644 --- a/diffcore.h +++ b/diffcore.h @@ -46,7 +46,7 @@ struct diff_filespec { unsigned is_stdin : 1; unsigned has_more_entries : 1; /* only appear in combined diff */ /* data should be considered "binary"; -1 means "don't know yet" */ - int is_binary; + int is_binary : 2; struct userdiff_driver *driver; }; |