diff options
| author | Paul Eggert | 2012-09-30 23:36:54 -0700 |
|---|---|---|
| committer | Paul Eggert | 2012-09-30 23:36:54 -0700 |
| commit | b0ab8123df78b7149d1f55b2ef0d3095c3f10628 (patch) | |
| tree | 14d324cb46348dbf9a4568c7050d2776259c5358 /src/alloc.c | |
| parent | 05584c31090df82f831f2998939fd423f036e86d (diff) | |
| download | emacs-b0ab8123df78b7149d1f55b2ef0d3095c3f10628.tar.gz emacs-b0ab8123df78b7149d1f55b2ef0d3095c3f10628.zip | |
Prefer plain 'static' to 'static inline'.
With static functions, modern compilers inline pretty well by
themselves; advice from programmers often hurts as much as it helps.
On my host (x86-64, Fedora 17, GCC 4.7.2, default 'configure'),
this change shrinks the text size of the Emacs executable by 1.1%
without affecting CPU significantly in my benchmark.
* alloc.c (mem_find, live_string_p, live_cons_p, live_symbol_p)
(live_float_p, live_misc_p, live_vector_p, live_buffer_p)
(mark_maybe_object, mark_maybe_pointer, bounded_number):
* buffer.c (bset_abbrev_mode, bset_abbrev_table)
(bset_auto_fill_function, bset_auto_save_file_format)
(bset_auto_save_file_name, bset_backed_up, bset_begv_marker)
(bset_bidi_display_reordering, bset_buffer_file_coding_system)
(bset_cache_long_line_scans, bset_case_fold_search)
(bset_ctl_arrow, bset_cursor_in_non_selected_windows)
(bset_cursor_type, bset_display_table, bset_extra_line_spacing)
(bset_file_format, bset_file_truename, bset_fringe_cursor_alist)
(bset_fringe_indicator_alist, bset_fringes_outside_margins)
(bset_header_line_format, bset_indicate_buffer_boundaries)
(bset_indicate_empty_lines, bset_invisibility_spec)
(bset_left_fringe_width, bset_major_mode, bset_mark)
(bset_minor_modes, bset_mode_line_format, bset_mode_name)
(bset_name, bset_overwrite_mode, bset_pt_marker)
(bset_right_fringe_width, bset_save_length)
(bset_scroll_bar_width, bset_scroll_down_aggressively)
(bset_scroll_up_aggressively, bset_selective_display)
(bset_selective_display_ellipses, bset_vertical_scroll_bar_type)
(bset_word_wrap, bset_zv_marker, set_buffer_overlays_before)
(set_buffer_overlays_after):
* category.c (bset_category_table):
* charset.c (read_hex):
* coding.c (produce_composition, produce_charset)
(handle_composition_annotation, handle_charset_annotation)
(char_encodable_p):
* dispnew.c (swap_glyph_pointers, copy_row_except_pointers)
(assign_row, set_frame_matrix_frame, make_current)
(add_row_entry):
* eval.c (set_specpdl_symbol, set_specpdl_old_value):
* fns.c (maybe_resize_hash_table):
* frame.c (fset_buffer_predicate, fset_minibuffer_window):
* gmalloc.c (register_heapinfo):
* image.c (lookup_image_type):
* intervals.c (set_interval_object, set_interval_left)
(set_interval_right, copy_interval_parent, rotate_right)
(rotate_left, balance_possible_root_interval):
* keyboard.c (kset_echo_string, kset_kbd_queue)
(kset_keyboard_translate_table, kset_last_prefix_arg)
(kset_last_repeatable_command, kset_local_function_key_map)
(kset_overriding_terminal_local_map, kset_real_last_command)
(kset_system_key_syms, clear_event, set_prop):
* lread.c (digit_to_number):
* marker.c (attach_marker, live_buffer, set_marker_internal):
* nsterm.m (ns_compute_glyph_string_overhangs):
* process.c (pset_buffer, pset_command)
(pset_decode_coding_system, pset_decoding_buf)
(pset_encode_coding_system, pset_encoding_buf, pset_filter)
(pset_log, pset_mark, pset_name, pset_plist, pset_sentinel)
(pset_status, pset_tty_name, pset_type, pset_write_queue):
* syntax.c (bset_syntax_table, dec_bytepos):
* terminal.c (tset_param_alist):
* textprop.c (interval_has_some_properties)
(interval_has_some_properties_list):
* window.c (wset_combination_limit, wset_dedicated)
(wset_display_table, wset_hchild, wset_left_fringe_width)
(wset_left_margin_cols, wset_new_normal, wset_new_total)
(wset_normal_cols, wset_normal_lines, wset_parent, wset_pointm)
(wset_right_fringe_width, wset_right_margin_cols)
(wset_scroll_bar_width, wset_start, wset_temslot, wset_vchild)
(wset_vertical_scroll_bar_type, wset_window_parameters):
* xdisp.c (wset_base_line_number, wset_base_line_pos)
(wset_column_number_displayed, wset_region_showing)
(window_box_edges, run_window_scroll_functions)
(append_glyph_string_lists, prepend_glyph_string_lists)
(append_glyph_string, set_glyph_string_background_width)
(append_glyph, append_composite_glyph)
(take_vertical_position_into_account):
* xfaces.c (x_create_gc, x_free_gc, merge_face_vectors)
(face_attr_equal_p, lface_equal_p, hash_string_case_insensitive)
(lface_hash, lface_same_font_attributes_p, lookup_face):
* xml.c (libxml2_loaded_p):
* xterm.c (x_set_mode_line_face_gc, x_set_glyph_string_gc)
(x_set_glyph_string_clipping, x_clear_glyph_string_rect):
Now 'static', not 'static inline'.
Fixes: debbugs:12541
Diffstat (limited to 'src/alloc.c')
| -rw-r--r-- | src/alloc.c | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/src/alloc.c b/src/alloc.c index 9278f226b69..3ed8cc2d990 100644 --- a/src/alloc.c +++ b/src/alloc.c | |||
| @@ -355,7 +355,7 @@ static void mem_rotate_left (struct mem_node *); | |||
| 355 | static void mem_rotate_right (struct mem_node *); | 355 | static void mem_rotate_right (struct mem_node *); |
| 356 | static void mem_delete (struct mem_node *); | 356 | static void mem_delete (struct mem_node *); |
| 357 | static void mem_delete_fixup (struct mem_node *); | 357 | static void mem_delete_fixup (struct mem_node *); |
| 358 | static inline struct mem_node *mem_find (void *); | 358 | static struct mem_node *mem_find (void *); |
| 359 | #endif | 359 | #endif |
| 360 | 360 | ||
| 361 | 361 | ||
| @@ -3550,7 +3550,7 @@ mem_init (void) | |||
| 3550 | /* Value is a pointer to the mem_node containing START. Value is | 3550 | /* Value is a pointer to the mem_node containing START. Value is |
| 3551 | MEM_NIL if there is no node in the tree containing START. */ | 3551 | MEM_NIL if there is no node in the tree containing START. */ |
| 3552 | 3552 | ||
| 3553 | static inline struct mem_node * | 3553 | static struct mem_node * |
| 3554 | mem_find (void *start) | 3554 | mem_find (void *start) |
| 3555 | { | 3555 | { |
| 3556 | struct mem_node *p; | 3556 | struct mem_node *p; |
| @@ -3926,7 +3926,7 @@ mem_delete_fixup (struct mem_node *x) | |||
| 3926 | /* Value is non-zero if P is a pointer to a live Lisp string on | 3926 | /* Value is non-zero if P is a pointer to a live Lisp string on |
| 3927 | the heap. M is a pointer to the mem_block for P. */ | 3927 | the heap. M is a pointer to the mem_block for P. */ |
| 3928 | 3928 | ||
| 3929 | static inline bool | 3929 | static bool |
| 3930 | live_string_p (struct mem_node *m, void *p) | 3930 | live_string_p (struct mem_node *m, void *p) |
| 3931 | { | 3931 | { |
| 3932 | if (m->type == MEM_TYPE_STRING) | 3932 | if (m->type == MEM_TYPE_STRING) |
| @@ -3949,7 +3949,7 @@ live_string_p (struct mem_node *m, void *p) | |||
| 3949 | /* Value is non-zero if P is a pointer to a live Lisp cons on | 3949 | /* Value is non-zero if P is a pointer to a live Lisp cons on |
| 3950 | the heap. M is a pointer to the mem_block for P. */ | 3950 | the heap. M is a pointer to the mem_block for P. */ |
| 3951 | 3951 | ||
| 3952 | static inline bool | 3952 | static bool |
| 3953 | live_cons_p (struct mem_node *m, void *p) | 3953 | live_cons_p (struct mem_node *m, void *p) |
| 3954 | { | 3954 | { |
| 3955 | if (m->type == MEM_TYPE_CONS) | 3955 | if (m->type == MEM_TYPE_CONS) |
| @@ -3975,7 +3975,7 @@ live_cons_p (struct mem_node *m, void *p) | |||
| 3975 | /* Value is non-zero if P is a pointer to a live Lisp symbol on | 3975 | /* Value is non-zero if P is a pointer to a live Lisp symbol on |
| 3976 | the heap. M is a pointer to the mem_block for P. */ | 3976 | the heap. M is a pointer to the mem_block for P. */ |
| 3977 | 3977 | ||
| 3978 | static inline bool | 3978 | static bool |
| 3979 | live_symbol_p (struct mem_node *m, void *p) | 3979 | live_symbol_p (struct mem_node *m, void *p) |
| 3980 | { | 3980 | { |
| 3981 | if (m->type == MEM_TYPE_SYMBOL) | 3981 | if (m->type == MEM_TYPE_SYMBOL) |
| @@ -4001,7 +4001,7 @@ live_symbol_p (struct mem_node *m, void *p) | |||
| 4001 | /* Value is non-zero if P is a pointer to a live Lisp float on | 4001 | /* Value is non-zero if P is a pointer to a live Lisp float on |
| 4002 | the heap. M is a pointer to the mem_block for P. */ | 4002 | the heap. M is a pointer to the mem_block for P. */ |
| 4003 | 4003 | ||
| 4004 | static inline bool | 4004 | static bool |
| 4005 | live_float_p (struct mem_node *m, void *p) | 4005 | live_float_p (struct mem_node *m, void *p) |
| 4006 | { | 4006 | { |
| 4007 | if (m->type == MEM_TYPE_FLOAT) | 4007 | if (m->type == MEM_TYPE_FLOAT) |
| @@ -4025,7 +4025,7 @@ live_float_p (struct mem_node *m, void *p) | |||
| 4025 | /* Value is non-zero if P is a pointer to a live Lisp Misc on | 4025 | /* Value is non-zero if P is a pointer to a live Lisp Misc on |
| 4026 | the heap. M is a pointer to the mem_block for P. */ | 4026 | the heap. M is a pointer to the mem_block for P. */ |
| 4027 | 4027 | ||
| 4028 | static inline bool | 4028 | static bool |
| 4029 | live_misc_p (struct mem_node *m, void *p) | 4029 | live_misc_p (struct mem_node *m, void *p) |
| 4030 | { | 4030 | { |
| 4031 | if (m->type == MEM_TYPE_MISC) | 4031 | if (m->type == MEM_TYPE_MISC) |
| @@ -4051,7 +4051,7 @@ live_misc_p (struct mem_node *m, void *p) | |||
| 4051 | /* Value is non-zero if P is a pointer to a live vector-like object. | 4051 | /* Value is non-zero if P is a pointer to a live vector-like object. |
| 4052 | M is a pointer to the mem_block for P. */ | 4052 | M is a pointer to the mem_block for P. */ |
| 4053 | 4053 | ||
| 4054 | static inline bool | 4054 | static bool |
| 4055 | live_vector_p (struct mem_node *m, void *p) | 4055 | live_vector_p (struct mem_node *m, void *p) |
| 4056 | { | 4056 | { |
| 4057 | if (m->type == MEM_TYPE_VECTOR_BLOCK) | 4057 | if (m->type == MEM_TYPE_VECTOR_BLOCK) |
| @@ -4087,7 +4087,7 @@ live_vector_p (struct mem_node *m, void *p) | |||
| 4087 | /* Value is non-zero if P is a pointer to a live buffer. M is a | 4087 | /* Value is non-zero if P is a pointer to a live buffer. M is a |
| 4088 | pointer to the mem_block for P. */ | 4088 | pointer to the mem_block for P. */ |
| 4089 | 4089 | ||
| 4090 | static inline bool | 4090 | static bool |
| 4091 | live_buffer_p (struct mem_node *m, void *p) | 4091 | live_buffer_p (struct mem_node *m, void *p) |
| 4092 | { | 4092 | { |
| 4093 | /* P must point to the start of the block, and the buffer | 4093 | /* P must point to the start of the block, and the buffer |
| @@ -4153,7 +4153,7 @@ DEFUN ("gc-status", Fgc_status, Sgc_status, 0, 0, "", | |||
| 4153 | 4153 | ||
| 4154 | /* Mark OBJ if we can prove it's a Lisp_Object. */ | 4154 | /* Mark OBJ if we can prove it's a Lisp_Object. */ |
| 4155 | 4155 | ||
| 4156 | static inline void | 4156 | static void |
| 4157 | mark_maybe_object (Lisp_Object obj) | 4157 | mark_maybe_object (Lisp_Object obj) |
| 4158 | { | 4158 | { |
| 4159 | void *po; | 4159 | void *po; |
| @@ -4222,7 +4222,7 @@ mark_maybe_object (Lisp_Object obj) | |||
| 4222 | /* If P points to Lisp data, mark that as live if it isn't already | 4222 | /* If P points to Lisp data, mark that as live if it isn't already |
| 4223 | marked. */ | 4223 | marked. */ |
| 4224 | 4224 | ||
| 4225 | static inline void | 4225 | static void |
| 4226 | mark_maybe_pointer (void *p) | 4226 | mark_maybe_pointer (void *p) |
| 4227 | { | 4227 | { |
| 4228 | struct mem_node *m; | 4228 | struct mem_node *m; |
| @@ -5052,7 +5052,7 @@ inhibit_garbage_collection (void) | |||
| 5052 | /* Used to avoid possible overflows when | 5052 | /* Used to avoid possible overflows when |
| 5053 | converting from C to Lisp integers. */ | 5053 | converting from C to Lisp integers. */ |
| 5054 | 5054 | ||
| 5055 | static inline Lisp_Object | 5055 | static Lisp_Object |
| 5056 | bounded_number (EMACS_INT number) | 5056 | bounded_number (EMACS_INT number) |
| 5057 | { | 5057 | { |
| 5058 | return make_number (min (MOST_POSITIVE_FIXNUM, number)); | 5058 | return make_number (min (MOST_POSITIVE_FIXNUM, number)); |