aboutsummaryrefslogtreecommitdiffstats
path: root/src/nsfont.m
diff options
context:
space:
mode:
authorPaul Eggert2019-01-09 09:52:38 -0800
committerPaul Eggert2019-01-09 09:59:10 -0800
commita84650334e30b2451bf4a8957bf2d57ade296d4e (patch)
treeb5642bb98eb89733def116fb6d864f74855023e2 /src/nsfont.m
parentf9d0fd6c1953138f7473a22917a1508740b2ce40 (diff)
downloademacs-a84650334e30b2451bf4a8957bf2d57ade296d4e.tar.gz
emacs-a84650334e30b2451bf4a8957bf2d57ade296d4e.zip
Use shortcuts for Flength
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.
Diffstat (limited to 'src/nsfont.m')
-rw-r--r--src/nsfont.m10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/nsfont.m b/src/nsfont.m
index d4639dcca8c..b59f87f4682 100644
--- a/src/nsfont.m
+++ b/src/nsfont.m
@@ -576,7 +576,7 @@ ns_findfonts (Lisp_Object font_spec, BOOL isMatch)
576 576
577 /* Add synthItal member if needed. */ 577 /* Add synthItal member if needed. */
578 family = [fdesc objectForKey: NSFontFamilyAttribute]; 578 family = [fdesc objectForKey: NSFontFamilyAttribute];
579 if (family != nil && !foundItal && XFIXNUM (Flength (list)) > 0) 579 if (family != nil && !foundItal && !NILP (list))
580 { 580 {
581 NSFontDescriptor *s1 = [NSFontDescriptor new]; 581 NSFontDescriptor *s1 = [NSFontDescriptor new];
582 NSFontDescriptor *sDesc 582 NSFontDescriptor *sDesc
@@ -595,8 +595,8 @@ ns_findfonts (Lisp_Object font_spec, BOOL isMatch)
595 return ns_fallback_entity (); 595 return ns_fallback_entity ();
596 596
597 if (NSFONT_TRACE) 597 if (NSFONT_TRACE)
598 fprintf (stderr, " Returning %"pI"d entities.\n", 598 fprintf (stderr, " Returning %"pD"d entities.\n",
599 XFIXNUM (Flength (list))); 599 list_length (list));
600 600
601 return list; 601 return list;
602} 602}
@@ -667,8 +667,8 @@ nsfont_list_family (struct frame *f)
667 /* FIXME: escape the name? */ 667 /* FIXME: escape the name? */
668 668
669 if (NSFONT_TRACE) 669 if (NSFONT_TRACE)
670 fprintf (stderr, "nsfont: list families returning %"pI"d entries\n", 670 fprintf (stderr, "nsfont: list families returning %"pD"d entries\n",
671 XFIXNUM (Flength (list))); 671 list_length (list));
672 672
673 unblock_input (); 673 unblock_input ();
674 return list; 674 return list;