• Paul Eggert's avatar
    Use shortcuts for Flength · a8465033
    Paul Eggert authored
    When calculating the length of a Lisp object whose type is
    known, use a specialized length operation on it to save a bit
    of runtime overhead.
    * src/callint.c (Fcall_interactively):
    * src/minibuf.c (read_minibuf_unwind):
    Use ASIZE rather than Flength on values that must be vectors.
    * src/charset.c (Fsort_charsets):
    * src/coding.c (detect_coding_sjis):
    (Fdefine_coding_system_internal):
    * src/data.c (wrong_choice):
    * src/eval.c (Flet, eval_sub, Fapply, apply_lambda):
    * src/fns.c (sort_list):
    * src/font.c (font_vconcat_entity_vectors)
    (font_find_for_lface):
    * src/frame.c (Fmodify_frame_parameters):
    * src/fringe.c (get_logical_fringe_bitmap):
    * src/ftfont.c (ftfont_get_open_type_spec):
    * src/gtkutil.c (xg_print_frames_dialog):
    * src/lread.c (read1, read_vector):
    * src/keymap.c (Fkey_description):
    * src/kqueue.c (Fkqueue_add_watch):
    * src/macfont.m (macfont_get_open_type_spec):
    * src/menu.c (parse_single_submenu, x_popup_menu_1):
    * src/minibuf.c (Finternal_complete_buffer):
    * src/nsfont.m (ns_findfonts, nsfont_list_family):
    * src/process.c (Fmake_process):
    * src/search.c (Fset_match_data):
    * src/xfaces.c (Fx_family_fonts):
    Use list_length rather than Flength on values that must be lists.
    * src/fns.c (list_length): New function.
    (Flength): Use it.
    * src/nsfont.m (ns_findfonts):
    Use !NILP (x) rather than XFIXNUM (Flength (x)) != 0.
    * src/xdisp.c (store_mode_line_string):
    Use SCHARS rather than Flength on values that must be strings.
    a8465033
lread.c 152 KB