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/ChangeLog | |
| 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/ChangeLog')
| -rw-r--r-- | src/ChangeLog | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index b8471445479..ec629fb9f10 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,5 +1,89 @@ | |||
| 1 | 2012-10-01 Paul Eggert <eggert@cs.ucla.edu> | 1 | 2012-10-01 Paul Eggert <eggert@cs.ucla.edu> |
| 2 | 2 | ||
| 3 | Prefer plain 'static' to 'static inline' (Bug#12541). | ||
| 4 | With static functions, modern compilers inline pretty well by | ||
| 5 | themselves; advice from programmers often hurts as much as it helps. | ||
| 6 | On my host (x86-64, Fedora 17, GCC 4.7.2, default 'configure'), | ||
| 7 | this change shrinks the text size of the Emacs executable by 1.1% | ||
| 8 | without affecting CPU significantly in my benchmark. | ||
| 9 | * alloc.c (mem_find, live_string_p, live_cons_p, live_symbol_p) | ||
| 10 | (live_float_p, live_misc_p, live_vector_p, live_buffer_p) | ||
| 11 | (mark_maybe_object, mark_maybe_pointer, bounded_number): | ||
| 12 | * buffer.c (bset_abbrev_mode, bset_abbrev_table) | ||
| 13 | (bset_auto_fill_function, bset_auto_save_file_format) | ||
| 14 | (bset_auto_save_file_name, bset_backed_up, bset_begv_marker) | ||
| 15 | (bset_bidi_display_reordering, bset_buffer_file_coding_system) | ||
| 16 | (bset_cache_long_line_scans, bset_case_fold_search) | ||
| 17 | (bset_ctl_arrow, bset_cursor_in_non_selected_windows) | ||
| 18 | (bset_cursor_type, bset_display_table, bset_extra_line_spacing) | ||
| 19 | (bset_file_format, bset_file_truename, bset_fringe_cursor_alist) | ||
| 20 | (bset_fringe_indicator_alist, bset_fringes_outside_margins) | ||
| 21 | (bset_header_line_format, bset_indicate_buffer_boundaries) | ||
| 22 | (bset_indicate_empty_lines, bset_invisibility_spec) | ||
| 23 | (bset_left_fringe_width, bset_major_mode, bset_mark) | ||
| 24 | (bset_minor_modes, bset_mode_line_format, bset_mode_name) | ||
| 25 | (bset_name, bset_overwrite_mode, bset_pt_marker) | ||
| 26 | (bset_right_fringe_width, bset_save_length) | ||
| 27 | (bset_scroll_bar_width, bset_scroll_down_aggressively) | ||
| 28 | (bset_scroll_up_aggressively, bset_selective_display) | ||
| 29 | (bset_selective_display_ellipses, bset_vertical_scroll_bar_type) | ||
| 30 | (bset_word_wrap, bset_zv_marker, set_buffer_overlays_before) | ||
| 31 | (set_buffer_overlays_after): | ||
| 32 | * category.c (bset_category_table): | ||
| 33 | * charset.c (read_hex): | ||
| 34 | * coding.c (produce_composition, produce_charset) | ||
| 35 | (handle_composition_annotation, handle_charset_annotation) | ||
| 36 | (char_encodable_p): | ||
| 37 | * dispnew.c (swap_glyph_pointers, copy_row_except_pointers) | ||
| 38 | (assign_row, set_frame_matrix_frame, make_current) | ||
| 39 | (add_row_entry): | ||
| 40 | * eval.c (set_specpdl_symbol, set_specpdl_old_value): | ||
| 41 | * fns.c (maybe_resize_hash_table): | ||
| 42 | * frame.c (fset_buffer_predicate, fset_minibuffer_window): | ||
| 43 | * gmalloc.c (register_heapinfo): | ||
| 44 | * image.c (lookup_image_type): | ||
| 45 | * intervals.c (set_interval_object, set_interval_left) | ||
| 46 | (set_interval_right, copy_interval_parent, rotate_right) | ||
| 47 | (rotate_left, balance_possible_root_interval): | ||
| 48 | * keyboard.c (kset_echo_string, kset_kbd_queue) | ||
| 49 | (kset_keyboard_translate_table, kset_last_prefix_arg) | ||
| 50 | (kset_last_repeatable_command, kset_local_function_key_map) | ||
| 51 | (kset_overriding_terminal_local_map, kset_real_last_command) | ||
| 52 | (kset_system_key_syms, clear_event, set_prop): | ||
| 53 | * lread.c (digit_to_number): | ||
| 54 | * marker.c (attach_marker, live_buffer, set_marker_internal): | ||
| 55 | * nsterm.m (ns_compute_glyph_string_overhangs): | ||
| 56 | * process.c (pset_buffer, pset_command) | ||
| 57 | (pset_decode_coding_system, pset_decoding_buf) | ||
| 58 | (pset_encode_coding_system, pset_encoding_buf, pset_filter) | ||
| 59 | (pset_log, pset_mark, pset_name, pset_plist, pset_sentinel) | ||
| 60 | (pset_status, pset_tty_name, pset_type, pset_write_queue): | ||
| 61 | * syntax.c (bset_syntax_table, dec_bytepos): | ||
| 62 | * terminal.c (tset_param_alist): | ||
| 63 | * textprop.c (interval_has_some_properties) | ||
| 64 | (interval_has_some_properties_list): | ||
| 65 | * window.c (wset_combination_limit, wset_dedicated) | ||
| 66 | (wset_display_table, wset_hchild, wset_left_fringe_width) | ||
| 67 | (wset_left_margin_cols, wset_new_normal, wset_new_total) | ||
| 68 | (wset_normal_cols, wset_normal_lines, wset_parent, wset_pointm) | ||
| 69 | (wset_right_fringe_width, wset_right_margin_cols) | ||
| 70 | (wset_scroll_bar_width, wset_start, wset_temslot, wset_vchild) | ||
| 71 | (wset_vertical_scroll_bar_type, wset_window_parameters): | ||
| 72 | * xdisp.c (wset_base_line_number, wset_base_line_pos) | ||
| 73 | (wset_column_number_displayed, wset_region_showing) | ||
| 74 | (window_box_edges, run_window_scroll_functions) | ||
| 75 | (append_glyph_string_lists, prepend_glyph_string_lists) | ||
| 76 | (append_glyph_string, set_glyph_string_background_width) | ||
| 77 | (append_glyph, append_composite_glyph) | ||
| 78 | (take_vertical_position_into_account): | ||
| 79 | * xfaces.c (x_create_gc, x_free_gc, merge_face_vectors) | ||
| 80 | (face_attr_equal_p, lface_equal_p, hash_string_case_insensitive) | ||
| 81 | (lface_hash, lface_same_font_attributes_p, lookup_face): | ||
| 82 | * xml.c (libxml2_loaded_p): | ||
| 83 | * xterm.c (x_set_mode_line_face_gc, x_set_glyph_string_gc) | ||
| 84 | (x_set_glyph_string_clipping, x_clear_glyph_string_rect): | ||
| 85 | Now 'static', not 'static inline'. | ||
| 86 | |||
| 3 | * bidi.c: Tune. | 87 | * bidi.c: Tune. |
| 4 | (bidi_copy_it): Do the whole copy with a single memcpy. | 88 | (bidi_copy_it): Do the whole copy with a single memcpy. |
| 5 | (bidi_char_at_pos): Merge the two STRING_CHAR calls into one. | 89 | (bidi_char_at_pos): Merge the two STRING_CHAR calls into one. |