提交 42c78a21 编写于 作者: R René Scharfe 提交者: Junio C Hamano

use DIV_ROUND_UP

Convert code that divides and rounds up to use DIV_ROUND_UP to make the
intent clearer and reduce the number of magic constants.
Signed-off-by: NRene Scharfe <l.s.r@web.de>
Reviewed-by: NJeff King <peff@peff.net>
Signed-off-by: NJunio C Hamano <gitster@pobox.com>
上级 8c8e978f
...@@ -148,7 +148,7 @@ static int too_many_loose_objects(void) ...@@ -148,7 +148,7 @@ static int too_many_loose_objects(void)
if (!dir) if (!dir)
return 0; return 0;
auto_threshold = (gc_auto_threshold + 255) / 256; auto_threshold = DIV_ROUND_UP(gc_auto_threshold, 256);
while ((ent = readdir(dir)) != NULL) { while ((ent = readdir(dir)) != NULL) {
if (strspn(ent->d_name, "0123456789abcdef") != 38 || if (strspn(ent->d_name, "0123456789abcdef") != 38 ||
ent->d_name[38] != '\0') ent->d_name[38] != '\0')
......
...@@ -524,7 +524,7 @@ static void compile_submodule_options(const struct grep_opt *opt, ...@@ -524,7 +524,7 @@ static void compile_submodule_options(const struct grep_opt *opt,
* submodule process has its own thread pool. * submodule process has its own thread pool.
*/ */
argv_array_pushf(&submodule_options, "--threads=%d", argv_array_pushf(&submodule_options, "--threads=%d",
(num_threads + 1) / 2); DIV_ROUND_UP(num_threads, 2));
/* Add Pathspecs */ /* Add Pathspecs */
argv_array_push(&submodule_options, "--"); argv_array_push(&submodule_options, "--");
......
...@@ -1302,7 +1302,7 @@ static struct commit *get_base_commit(const char *base_commit, ...@@ -1302,7 +1302,7 @@ static struct commit *get_base_commit(const char *base_commit,
if (rev_nr % 2) if (rev_nr % 2)
rev[i] = rev[2 * i]; rev[i] = rev[2 * i];
rev_nr = (rev_nr + 1) / 2; rev_nr = DIV_ROUND_UP(rev_nr, 2);
} }
if (!in_merge_bases(base, rev[0])) if (!in_merge_bases(base, rev[0]))
......
...@@ -1805,7 +1805,7 @@ static const char *unpack_with_sideband(struct shallow_info *si) ...@@ -1805,7 +1805,7 @@ static const char *unpack_with_sideband(struct shallow_info *si)
static void prepare_shallow_update(struct command *commands, static void prepare_shallow_update(struct command *commands,
struct shallow_info *si) struct shallow_info *si)
{ {
int i, j, k, bitmap_size = (si->ref->nr + 31) / 32; int i, j, k, bitmap_size = DIV_ROUND_UP(si->ref->nr, 32);
ALLOC_ARRAY(si->used_shallow, si->shallow->nr); ALLOC_ARRAY(si->used_shallow, si->shallow->nr);
assign_shallow_commits_to_refs(si, si->used_shallow, NULL); assign_shallow_commits_to_refs(si, si->used_shallow, NULL);
......
...@@ -2095,7 +2095,7 @@ static void show_dirstat_by_line(struct diffstat_t *data, struct diff_options *o ...@@ -2095,7 +2095,7 @@ static void show_dirstat_by_line(struct diffstat_t *data, struct diff_options *o
* bytes per "line". * bytes per "line".
* This is stupid and ugly, but very cheap... * This is stupid and ugly, but very cheap...
*/ */
damage = (damage + 63) / 64; damage = DIV_ROUND_UP(damage, 64);
ALLOC_GROW(dir.files, dir.nr + 1, dir.alloc); ALLOC_GROW(dir.files, dir.nr + 1, dir.alloc);
dir.files[dir.nr].name = file->name; dir.files[dir.nr].name = file->name;
dir.files[dir.nr].changed = damage; dir.files[dir.nr].changed = damage;
......
...@@ -210,8 +210,8 @@ size_t ewah_add(struct ewah_bitmap *self, eword_t word) ...@@ -210,8 +210,8 @@ size_t ewah_add(struct ewah_bitmap *self, eword_t word)
void ewah_set(struct ewah_bitmap *self, size_t i) void ewah_set(struct ewah_bitmap *self, size_t i)
{ {
const size_t dist = const size_t dist =
(i + BITS_IN_EWORD) / BITS_IN_EWORD - DIV_ROUND_UP(i + 1, BITS_IN_EWORD) -
(self->bit_size + BITS_IN_EWORD - 1) / BITS_IN_EWORD; DIV_ROUND_UP(self->bit_size, BITS_IN_EWORD);
assert(i >= self->bit_size); assert(i >= self->bit_size);
......
...@@ -861,7 +861,7 @@ static char hexchar(unsigned int b) ...@@ -861,7 +861,7 @@ static char hexchar(unsigned int b)
return b < 10 ? '0' + b : 'a' + (b - 10); return b < 10 ? '0' + b : 'a' + (b - 10);
} }
#define ENCODED_SIZE(n) (4*((n+2)/3)) #define ENCODED_SIZE(n) (4 * DIV_ROUND_UP((n), 3))
static char *cram(const char *challenge_64, const char *user, const char *pass) static char *cram(const char *challenge_64, const char *user, const char *pass)
{ {
int i, resp_len, encoded_len, decoded_len; int i, resp_len, encoded_len, decoded_len;
......
...@@ -479,10 +479,9 @@ int find_unique_abbrev_r(char *hex, const unsigned char *sha1, int len) ...@@ -479,10 +479,9 @@ int find_unique_abbrev_r(char *hex, const unsigned char *sha1, int len)
* We now know we have on the order of 2^len objects, which * We now know we have on the order of 2^len objects, which
* expects a collision at 2^(len/2). But we also care about hex * expects a collision at 2^(len/2). But we also care about hex
* chars, not bits, and there are 4 bits per hex. So all * chars, not bits, and there are 4 bits per hex. So all
* together we need to divide by 2; but we also want to round * together we need to divide by 2 and round up.
* odd numbers up, hence adding one before dividing.
*/ */
len = (len + 1) / 2; len = DIV_ROUND_UP(len, 2);
/* /*
* For very small repos, we stick with our regular fallback. * For very small repos, we stick with our regular fallback.
*/ */
......
...@@ -443,7 +443,7 @@ struct paint_info { ...@@ -443,7 +443,7 @@ struct paint_info {
static uint32_t *paint_alloc(struct paint_info *info) static uint32_t *paint_alloc(struct paint_info *info)
{ {
unsigned nr = (info->nr_bits + 31) / 32; unsigned nr = DIV_ROUND_UP(info->nr_bits, 32);
unsigned size = nr * sizeof(uint32_t); unsigned size = nr * sizeof(uint32_t);
void *p; void *p;
if (!info->pool_count || size > info->end - info->free) { if (!info->pool_count || size > info->end - info->free) {
...@@ -471,7 +471,7 @@ static void paint_down(struct paint_info *info, const unsigned char *sha1, ...@@ -471,7 +471,7 @@ static void paint_down(struct paint_info *info, const unsigned char *sha1,
{ {
unsigned int i, nr; unsigned int i, nr;
struct commit_list *head = NULL; struct commit_list *head = NULL;
int bitmap_nr = (info->nr_bits + 31) / 32; int bitmap_nr = DIV_ROUND_UP(info->nr_bits, 32);
size_t bitmap_size = st_mult(sizeof(uint32_t), bitmap_nr); size_t bitmap_size = st_mult(sizeof(uint32_t), bitmap_nr);
struct commit *c = lookup_commit_reference_gently(sha1, 1); struct commit *c = lookup_commit_reference_gently(sha1, 1);
uint32_t *tmp; /* to be freed before return */ uint32_t *tmp; /* to be freed before return */
...@@ -611,7 +611,7 @@ void assign_shallow_commits_to_refs(struct shallow_info *info, ...@@ -611,7 +611,7 @@ void assign_shallow_commits_to_refs(struct shallow_info *info,
paint_down(&pi, ref->oid[i].hash, i); paint_down(&pi, ref->oid[i].hash, i);
if (used) { if (used) {
int bitmap_size = ((pi.nr_bits + 31) / 32) * sizeof(uint32_t); int bitmap_size = DIV_ROUND_UP(pi.nr_bits, 32) * sizeof(uint32_t);
memset(used, 0, sizeof(*used) * info->shallow->nr); memset(used, 0, sizeof(*used) * info->shallow->nr);
for (i = 0; i < nr_shallow; i++) { for (i = 0; i < nr_shallow; i++) {
const struct commit *c = lookup_commit(oid[shallow[i]].hash); const struct commit *c = lookup_commit(oid[shallow[i]].hash);
...@@ -672,7 +672,7 @@ static void post_assign_shallow(struct shallow_info *info, ...@@ -672,7 +672,7 @@ static void post_assign_shallow(struct shallow_info *info,
struct commit *c; struct commit *c;
uint32_t **bitmap; uint32_t **bitmap;
int dst, i, j; int dst, i, j;
int bitmap_nr = (info->ref->nr + 31) / 32; int bitmap_nr = DIV_ROUND_UP(info->ref->nr, 32);
struct commit_array ca; struct commit_array ca;
trace_printf_key(&trace_shallow, "shallow: post_assign_shallow\n"); trace_printf_key(&trace_shallow, "shallow: post_assign_shallow\n");
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册