diff options
author | normal <normal@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2018-06-01 21:23:20 +0000 |
---|---|---|
committer | normal <normal@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2018-06-01 21:23:20 +0000 |
commit | 0b0015d98e9693fc8b509614e52f85c873616e33 (patch) | |
tree | dd121280ee31542cc092bc5cf6e0a16e22f13376 | |
parent | e609793f35db2c2ab254d5c694115019614ae62e (diff) | |
download | ruby-0b0015d98e9693fc8b509614e52f85c873616e33.tar.gz |
gc.c: reduce size slightly by making MEMOP_TYPE_MALLOC zero
Most (if not all) architectures have instructions for comparing
against zero, allowing compilers to generate more compact code.
Other MEMOP_TYPE_* enum values are not compared in hot paths,
but MEMOP_TYPE_MALLOC is checked in objspace_malloc_increase
text data bss dec hex filename
84088 264 3664 88016 157d0 gc-before.o
83784 264 3664 87712 156a0 gc.o
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63546 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | gc.c | 6 |
1 files changed, 3 insertions, 3 deletions
@@ -7785,9 +7785,9 @@ objspace_malloc_size(rb_objspace_t *objspace, void *ptr, size_t hint) } enum memop_type { - MEMOP_TYPE_MALLOC = 1, - MEMOP_TYPE_FREE = 2, - MEMOP_TYPE_REALLOC = 3 + MEMOP_TYPE_MALLOC = 0, + MEMOP_TYPE_FREE, + MEMOP_TYPE_REALLOC }; static inline void |