[latex3-commits] [git/LaTeX3-latex3-latex3] master: Use dim variable set to 1sp to speed up l3intarray (27f260e)

Bruno Le Floch bruno at le-floch.fr
Fri Mar 30 05:05:04 CEST 2018


Repository : https://github.com/latex3/latex3
On branch  : master
Link       : https://github.com/latex3/latex3/commit/27f260eed593f29ee855fc2322345f273461bb92

>---------------------------------------------------------------

commit 27f260eed593f29ee855fc2322345f273461bb92
Author: Bruno Le Floch <bruno at le-floch.fr>
Date:   Thu Mar 29 22:48:08 2018 -0400

    Use dim variable set to 1sp to speed up l3intarray
    
    This requires loading l3intarray later.  Since I am somewhat likely to
    implement an l3fparray it makes sense to load l3intarray and then
    l3fparray just after l3fp.


>---------------------------------------------------------------

27f260eed593f29ee855fc2322345f273461bb92
 l3kernel/l3.ins                         |    2 +-
 l3kernel/l3format.ins                   |    2 +-
 l3kernel/l3intarray.dtx                 |   22 ++++++++++++++--------
 l3kernel/source3body.tex                |    2 +-
 l3kernel/testfiles/m3expl001.luatex.tlg |   22 ++++++++++++----------
 l3kernel/testfiles/m3expl001.ptex.tlg   |   22 ++++++++++++----------
 l3kernel/testfiles/m3expl001.tlg        |   22 ++++++++++++----------
 l3kernel/testfiles/m3expl001.uptex.tlg  |   22 ++++++++++++----------
 l3kernel/testfiles/m3expl001.xetex.tlg  |   22 ++++++++++++----------
 l3kernel/testfiles/m3expl002.luatex.tlg |    3 ++-
 l3kernel/testfiles/m3expl002.ptex.tlg   |    3 ++-
 l3kernel/testfiles/m3expl002.tlg        |    3 ++-
 l3kernel/testfiles/m3expl002.uptex.tlg  |    3 ++-
 l3kernel/testfiles/m3expl002.xetex.tlg  |    3 ++-
 l3kernel/testfiles/m3expl003.luatex.tlg |   22 ++++++++++++----------
 l3kernel/testfiles/m3expl003.ptex.tlg   |   22 ++++++++++++----------
 l3kernel/testfiles/m3expl003.tlg        |   22 ++++++++++++----------
 l3kernel/testfiles/m3expl003.uptex.tlg  |   22 ++++++++++++----------
 l3kernel/testfiles/m3expl003.xetex.tlg  |   22 ++++++++++++----------
 l3kernel/testfiles/m3expl004.luatex.tlg |    3 ++-
 l3kernel/testfiles/m3expl004.ptex.tlg   |    3 ++-
 l3kernel/testfiles/m3expl004.tlg        |    3 ++-
 l3kernel/testfiles/m3expl004.uptex.tlg  |    3 ++-
 l3kernel/testfiles/m3expl004.xetex.tlg  |    3 ++-
 l3kernel/testfiles/m3expl006.luatex.tlg |    3 ++-
 l3kernel/testfiles/m3expl006.ptex.tlg   |    3 ++-
 l3kernel/testfiles/m3expl006.tlg        |    3 ++-
 l3kernel/testfiles/m3expl006.uptex.tlg  |    3 ++-
 l3kernel/testfiles/m3expl006.xetex.tlg  |    3 ++-
 l3kernel/testfiles/m3intarray001.tlg    |    6 ++----
 l3kernel/testfiles/m3skip001.tlg        |    2 +-
 l3kernel/testfiles/m3skip005.tlg        |    2 +-
 32 files changed, 171 insertions(+), 132 deletions(-)

diff --git a/l3kernel/l3.ins b/l3kernel/l3.ins
index 244c385..7fd45b8 100644
--- a/l3kernel/l3.ins
+++ b/l3kernel/l3.ins
@@ -67,7 +67,6 @@ and all files in that bundle must be distributed together.
         \from{l3str.dtx}        {package}
         \from{l3seq.dtx}        {package}
         \from{l3int.dtx}        {package}
-        \from{l3intarray.dtx}   {package}
         \from{l3flag.dtx}       {package}
         \from{l3quark.dtx}      {package}
         \from{l3prg.dtx}        {package}
@@ -91,6 +90,7 @@ and all files in that bundle must be distributed together.
         \from{l3fp-trig.dtx}    {package}
         \from{l3fp-convert.dtx} {package}
         \from{l3fp-random.dtx}  {package}
+        \from{l3intarray.dtx}   {package}
         \from{l3sort.dtx}       {package}
         \from{l3tl-build.dtx}   {package}
         \from{l3tl-analysis.dtx}{package}
diff --git a/l3kernel/l3format.ins b/l3kernel/l3format.ins
index 472df57..e378f99 100644
--- a/l3kernel/l3format.ins
+++ b/l3kernel/l3format.ins
@@ -67,7 +67,6 @@ and all files in that bundle must be distributed together.
         \from{l3alloc.dtx}      {initex}
         % ==============================
         \from{l3int.dtx}        {initex}
-        \from{l3intarray.dtx}   {initex}
         \from{l3flag.dtx}       {initex}
         \from{l3quark.dtx}      {initex}
         \from{l3prg.dtx}        {initex}
@@ -91,6 +90,7 @@ and all files in that bundle must be distributed together.
         \from{l3fp-trig.dtx}    {initex}
         \from{l3fp-convert.dtx} {initex}
         \from{l3fp-random.dtx}  {initex}
+        \from{l3intarray.dtx}   {initex}
         \from{l3sort.dtx}       {initex}
         \from{l3tl-build.dtx}   {initex}
         \from{l3tl-analysis.dtx}{initex}
diff --git a/l3kernel/l3intarray.dtx b/l3kernel/l3intarray.dtx
index 80fd822..382ffff 100644
--- a/l3kernel/l3intarray.dtx
+++ b/l3kernel/l3intarray.dtx
@@ -60,8 +60,6 @@
 %   \item The absolute value of each entry has maximum $2^{30}-1$
 %     (\emph{i.e.}~one power lower than the usual \cs{c_max_int}
 %     ceiling of $2^{31}-1$)
-%   \item The total number of entries in all \texttt{intarray} storage
-%     must be less than $4\times 10^6$
 % \end{itemize}
 % The use of \texttt{intarray} data is therefore recommended for cases where
 % the need for fast access is of paramount importance.
@@ -139,6 +137,13 @@
 %
 % \subsection{Allocating arrays}
 %
+% \begin{variable}{\c_@@_sp_dim}
+%   Used to convert integers to dimensions fast.
+%    \begin{macrocode}
+\dim_const:Nn \c_@@_sp_dim { 1 sp }
+%    \end{macrocode}
+% \end{variable}
+%
 % \begin{variable}{\g_@@_font_int}
 %   Used to assign one font per array.
 %    \begin{macrocode}
@@ -159,12 +164,13 @@
   {
     \__chk_if_free_cs:N #1
     \int_gincr:N \g_@@_font_int
-    \tex_global:D \tex_font:D #1 = cmr10~at~ \g_@@_font_int sp \scan_stop:
+    \tex_global:D \tex_font:D #1
+      = cmr10~at~ \g_@@_font_int \c_@@_sp_dim \scan_stop:
     \tex_hyphenchar:D #1 = \int_eval:n {#2} \scan_stop:
     \int_compare:nNnT { \tex_hyphenchar:D #1 } > 0
-      { \tex_fontdimen:D \tex_hyphenchar:D #1 #1 = 0 sp \scan_stop: }
+      { \tex_fontdimen:D \tex_hyphenchar:D #1 #1 = \c_zero_dim }
     \int_step_inline:nnnn { 1 } { 1 } { 8 }
-      { \tex_fontdimen:D ##1 #1 = 0 sp \scan_stop: }
+      { \tex_fontdimen:D ##1 #1 = \c_zero_dim }
   }
 %    \end{macrocode}
 % \end{macro}
@@ -184,7 +190,7 @@
 %   position and value are within bounds.
 %    \begin{macrocode}
 \cs_new_protected:Npn \intarray_gset_fast:Nnn #1#2#3
-  { \tex_fontdimen:D \int_eval:n {#2} #1 = \int_eval:n {#3} sp \scan_stop: }
+  { \tex_fontdimen:D \int_eval:n {#2} #1 = \int_eval:n {#3} \c_@@_sp_dim }
 \cs_new_protected:Npn \intarray_gset:Nnn #1#2#3
   {
     \exp_args:Nff \@@_gset:Nnn #1
@@ -194,8 +200,7 @@
   {
     \int_compare:nTF { 1 <= #2 <= \intarray_count:N #1 }
       {
-        \int_compare:nTF { - \c_max_dim <= \int_abs:n {#3} <= \c_max_dim }
-          { \intarray_gset_fast:Nnn #1 {#2} {#3} }
+        \int_compare:nNnTF { \int_abs:n {#3} } > \c_max_dim
           {
             \__kernel_msg_error:nnxxxx { kernel } { overflow }
               { \token_to_str:N #1 } {#2} {#3}
@@ -203,6 +208,7 @@
             \intarray_gset_fast:Nnn #1 {#2}
               { \int_compare:nNnT {#3} < 0 { - } \c_max_dim }
           }
+          { \intarray_gset_fast:Nnn #1 {#2} {#3} }
       }
       {
         \__kernel_msg_error:nnxxx { kernel } { out-of-bounds }
diff --git a/l3kernel/source3body.tex b/l3kernel/source3body.tex
index 57c36a4..c05e9b5 100644
--- a/l3kernel/source3body.tex
+++ b/l3kernel/source3body.tex
@@ -408,7 +408,6 @@ used on top of \LaTeXe{} if \cs{outer} tokens are used in the arguments.
 \DocInput{l3str.dtx}
 \DocInput{l3seq.dtx}
 \DocInput{l3int.dtx}
-\DocInput{l3intarray.dtx}
 \DocInput{l3flag.dtx}
 \DocInput{l3quark.dtx}
 \DocInput{l3prg.dtx}
@@ -441,6 +440,7 @@ used on top of \LaTeXe{} if \cs{outer} tokens are used in the arguments.
   }
 \ExplSyntaxOff
 
+\DocInput{l3intarray.dtx}
 \DocInput{l3sort.dtx}
 \DocInput{l3tl-build.dtx}
 \DocInput{l3tl-analysis.dtx}
diff --git a/l3kernel/testfiles/m3expl001.luatex.tlg b/l3kernel/testfiles/m3expl001.luatex.tlg
index 41eecea..eaacd0c 100644
--- a/l3kernel/testfiles/m3expl001.luatex.tlg
+++ b/l3kernel/testfiles/m3expl001.luatex.tlg
@@ -1855,16 +1855,6 @@ Defining \g_tmpb_int on line ...
 \g_tmpb_int=\count...
 Defining \c_minus_one on line ...
 Defining \__int_value:w on line ...
-Defining \g__intarray_font_int on line ...
-\g__intarray_font_int=\count...
-Defining \intarray_new:Nn on line ...
-Defining \intarray_count:N on line ...
-Defining \intarray_gset_fast:Nnn on line ...
-Defining \intarray_gset:Nnn on line ...
-Defining \__intarray_gset:Nnn on line ...
-Defining \intarray_item_fast:Nn on line ...
-Defining \intarray_item:Nn on line ...
-Defining \__intarray_item:Nn on line ...
 Defining \flag_new:n on line ...
 Defining \flag_clear:n on line ...
 Defining \__flag_clear:wn on line ...
@@ -4615,6 +4605,18 @@ Defining \__fp_randint_e:wwwNnn on line ...
 Defining \__fp_randint_narrow_e:nnnn on line ...
 Defining \__fp_randint_wide_e:nnnn on line ...
 Defining \__fp_randint_wide_e:wnnn on line ...
+Defining \c__intarray_sp_dim on line ...
+\c__intarray_sp_dim=\dimen...
+Defining \g__intarray_font_int on line ...
+\g__intarray_font_int=\count...
+Defining \intarray_new:Nn on line ...
+Defining \intarray_count:N on line ...
+Defining \intarray_gset_fast:Nnn on line ...
+Defining \intarray_gset:Nnn on line ...
+Defining \__intarray_gset:Nnn on line ...
+Defining \intarray_item_fast:Nn on line ...
+Defining \intarray_item:Nn on line ...
+Defining \__intarray_item:Nn on line ...
 Defining \l__sort_length_int on line ...
 \l__sort_length_int=\count...
 Defining \l__sort_min_int on line ...
diff --git a/l3kernel/testfiles/m3expl001.ptex.tlg b/l3kernel/testfiles/m3expl001.ptex.tlg
index f7dc002..bc03d42 100644
--- a/l3kernel/testfiles/m3expl001.ptex.tlg
+++ b/l3kernel/testfiles/m3expl001.ptex.tlg
@@ -1536,16 +1536,6 @@ Defining \g_tmpb_int on line ...
 \g_tmpb_int=\count...
 Defining \c_minus_one on line ...
 Defining \__int_value:w on line ...
-Defining \g__intarray_font_int on line ...
-\g__intarray_font_int=\count...
-Defining \intarray_new:Nn on line ...
-Defining \intarray_count:N on line ...
-Defining \intarray_gset_fast:Nnn on line ...
-Defining \intarray_gset:Nnn on line ...
-Defining \__intarray_gset:Nnn on line ...
-Defining \intarray_item_fast:Nn on line ...
-Defining \intarray_item:Nn on line ...
-Defining \__intarray_item:Nn on line ...
 Defining \flag_new:n on line ...
 Defining \flag_clear:n on line ...
 Defining \__flag_clear:wn on line ...
@@ -4552,6 +4542,18 @@ Defining \__fp_randint_e:wwwNnn on line ...
 Defining \__fp_randint_narrow_e:nnnn on line ...
 Defining \__fp_randint_wide_e:nnnn on line ...
 Defining \__fp_randint_wide_e:wnnn on line ...
+Defining \c__intarray_sp_dim on line ...
+\c__intarray_sp_dim=\dimen...
+Defining \g__intarray_font_int on line ...
+\g__intarray_font_int=\count...
+Defining \intarray_new:Nn on line ...
+Defining \intarray_count:N on line ...
+Defining \intarray_gset_fast:Nnn on line ...
+Defining \intarray_gset:Nnn on line ...
+Defining \__intarray_gset:Nnn on line ...
+Defining \intarray_item_fast:Nn on line ...
+Defining \intarray_item:Nn on line ...
+Defining \__intarray_item:Nn on line ...
 Defining \l__sort_length_int on line ...
 \l__sort_length_int=\count...
 Defining \l__sort_min_int on line ...
diff --git a/l3kernel/testfiles/m3expl001.tlg b/l3kernel/testfiles/m3expl001.tlg
index 8517a11..58ff752 100644
--- a/l3kernel/testfiles/m3expl001.tlg
+++ b/l3kernel/testfiles/m3expl001.tlg
@@ -1536,16 +1536,6 @@ Defining \g_tmpb_int on line ...
 \g_tmpb_int=\count...
 Defining \c_minus_one on line ...
 Defining \__int_value:w on line ...
-Defining \g__intarray_font_int on line ...
-\g__intarray_font_int=\count...
-Defining \intarray_new:Nn on line ...
-Defining \intarray_count:N on line ...
-Defining \intarray_gset_fast:Nnn on line ...
-Defining \intarray_gset:Nnn on line ...
-Defining \__intarray_gset:Nnn on line ...
-Defining \intarray_item_fast:Nn on line ...
-Defining \intarray_item:Nn on line ...
-Defining \__intarray_item:Nn on line ...
 Defining \flag_new:n on line ...
 Defining \flag_clear:n on line ...
 Defining \__flag_clear:wn on line ...
@@ -4552,6 +4542,18 @@ Defining \__fp_randint_e:wwwNnn on line ...
 Defining \__fp_randint_narrow_e:nnnn on line ...
 Defining \__fp_randint_wide_e:nnnn on line ...
 Defining \__fp_randint_wide_e:wnnn on line ...
+Defining \c__intarray_sp_dim on line ...
+\c__intarray_sp_dim=\dimen...
+Defining \g__intarray_font_int on line ...
+\g__intarray_font_int=\count...
+Defining \intarray_new:Nn on line ...
+Defining \intarray_count:N on line ...
+Defining \intarray_gset_fast:Nnn on line ...
+Defining \intarray_gset:Nnn on line ...
+Defining \__intarray_gset:Nnn on line ...
+Defining \intarray_item_fast:Nn on line ...
+Defining \intarray_item:Nn on line ...
+Defining \__intarray_item:Nn on line ...
 Defining \l__sort_length_int on line ...
 \l__sort_length_int=\count...
 Defining \l__sort_min_int on line ...
diff --git a/l3kernel/testfiles/m3expl001.uptex.tlg b/l3kernel/testfiles/m3expl001.uptex.tlg
index de1aff8..14ec4dd 100644
--- a/l3kernel/testfiles/m3expl001.uptex.tlg
+++ b/l3kernel/testfiles/m3expl001.uptex.tlg
@@ -1536,16 +1536,6 @@ Defining \g_tmpb_int on line ...
 \g_tmpb_int=\count...
 Defining \c_minus_one on line ...
 Defining \__int_value:w on line ...
-Defining \g__intarray_font_int on line ...
-\g__intarray_font_int=\count...
-Defining \intarray_new:Nn on line ...
-Defining \intarray_count:N on line ...
-Defining \intarray_gset_fast:Nnn on line ...
-Defining \intarray_gset:Nnn on line ...
-Defining \__intarray_gset:Nnn on line ...
-Defining \intarray_item_fast:Nn on line ...
-Defining \intarray_item:Nn on line ...
-Defining \__intarray_item:Nn on line ...
 Defining \flag_new:n on line ...
 Defining \flag_clear:n on line ...
 Defining \__flag_clear:wn on line ...
@@ -4552,6 +4542,18 @@ Defining \__fp_randint_e:wwwNnn on line ...
 Defining \__fp_randint_narrow_e:nnnn on line ...
 Defining \__fp_randint_wide_e:nnnn on line ...
 Defining \__fp_randint_wide_e:wnnn on line ...
+Defining \c__intarray_sp_dim on line ...
+\c__intarray_sp_dim=\dimen...
+Defining \g__intarray_font_int on line ...
+\g__intarray_font_int=\count...
+Defining \intarray_new:Nn on line ...
+Defining \intarray_count:N on line ...
+Defining \intarray_gset_fast:Nnn on line ...
+Defining \intarray_gset:Nnn on line ...
+Defining \__intarray_gset:Nnn on line ...
+Defining \intarray_item_fast:Nn on line ...
+Defining \intarray_item:Nn on line ...
+Defining \__intarray_item:Nn on line ...
 Defining \l__sort_length_int on line ...
 \l__sort_length_int=\count...
 Defining \l__sort_min_int on line ...
diff --git a/l3kernel/testfiles/m3expl001.xetex.tlg b/l3kernel/testfiles/m3expl001.xetex.tlg
index d5830f8..faf2018 100644
--- a/l3kernel/testfiles/m3expl001.xetex.tlg
+++ b/l3kernel/testfiles/m3expl001.xetex.tlg
@@ -1853,16 +1853,6 @@ Defining \g_tmpb_int on line ...
 \g_tmpb_int=\count...
 Defining \c_minus_one on line ...
 Defining \__int_value:w on line ...
-Defining \g__intarray_font_int on line ...
-\g__intarray_font_int=\count...
-Defining \intarray_new:Nn on line ...
-Defining \intarray_count:N on line ...
-Defining \intarray_gset_fast:Nnn on line ...
-Defining \intarray_gset:Nnn on line ...
-Defining \__intarray_gset:Nnn on line ...
-Defining \intarray_item_fast:Nn on line ...
-Defining \intarray_item:Nn on line ...
-Defining \__intarray_item:Nn on line ...
 Defining \flag_new:n on line ...
 Defining \flag_clear:n on line ...
 Defining \__flag_clear:wn on line ...
@@ -4592,6 +4582,18 @@ Defining \__fp_parse_word_randint:N on line ...
 Defining message LaTeX/kernel/fp-no-random on line ...
 Defining \__fp_rand_o:Nw on line ...
 Defining \__fp_randint_o:Nw on line ...
+Defining \c__intarray_sp_dim on line ...
+\c__intarray_sp_dim=\dimen...
+Defining \g__intarray_font_int on line ...
+\g__intarray_font_int=\count...
+Defining \intarray_new:Nn on line ...
+Defining \intarray_count:N on line ...
+Defining \intarray_gset_fast:Nnn on line ...
+Defining \intarray_gset:Nnn on line ...
+Defining \__intarray_gset:Nnn on line ...
+Defining \intarray_item_fast:Nn on line ...
+Defining \intarray_item:Nn on line ...
+Defining \__intarray_item:Nn on line ...
 Defining \l__sort_length_int on line ...
 \l__sort_length_int=\count...
 Defining \l__sort_min_int on line ...
diff --git a/l3kernel/testfiles/m3expl002.luatex.tlg b/l3kernel/testfiles/m3expl002.luatex.tlg
index 40ae512..7f7935f 100644
--- a/l3kernel/testfiles/m3expl002.luatex.tlg
+++ b/l3kernel/testfiles/m3expl002.luatex.tlg
@@ -8,7 +8,6 @@ Don't change this file in any respect.
 \l_tmpb_int=\count...
 \g_tmpa_int=\count...
 \g_tmpb_int=\count...
-\g__intarray_font_int=\count...
 \g__kernel_prg_map_int=\count...
 \c_log_iow=\count...
 \l_iow_line_count_int=\count...
@@ -46,6 +45,8 @@ Don't change this file in any respect.
 \c__fp_rand_size_int=\count...
 \c__fp_rand_four_int=\count...
 \c__fp_rand_eight_int=\count...
+\c__intarray_sp_dim=\dimen...
+\g__intarray_font_int=\count...
 \l__sort_length_int=\count...
 \l__sort_min_int=\count...
 \l__sort_top_int=\count...
diff --git a/l3kernel/testfiles/m3expl002.ptex.tlg b/l3kernel/testfiles/m3expl002.ptex.tlg
index 925b57d..b24289c 100644
--- a/l3kernel/testfiles/m3expl002.ptex.tlg
+++ b/l3kernel/testfiles/m3expl002.ptex.tlg
@@ -7,7 +7,6 @@ Don't change this file in any respect.
 \l_tmpb_int=\count...
 \g_tmpa_int=\count...
 \g_tmpb_int=\count...
-\g__intarray_font_int=\count...
 \g__kernel_prg_map_int=\count...
 \c_log_iow=\count...
 \l_iow_line_count_int=\count...
@@ -45,6 +44,8 @@ Don't change this file in any respect.
 \c__fp_rand_size_int=\count...
 \c__fp_rand_four_int=\count...
 \c__fp_rand_eight_int=\count...
+\c__intarray_sp_dim=\dimen...
+\g__intarray_font_int=\count...
 \l__sort_length_int=\count...
 \l__sort_min_int=\count...
 \l__sort_top_int=\count...
diff --git a/l3kernel/testfiles/m3expl002.tlg b/l3kernel/testfiles/m3expl002.tlg
index 089ed0c..399644a 100644
--- a/l3kernel/testfiles/m3expl002.tlg
+++ b/l3kernel/testfiles/m3expl002.tlg
@@ -7,7 +7,6 @@ Don't change this file in any respect.
 \l_tmpb_int=\count...
 \g_tmpa_int=\count...
 \g_tmpb_int=\count...
-\g__intarray_font_int=\count...
 \g__kernel_prg_map_int=\count...
 \c_log_iow=\count...
 \l_iow_line_count_int=\count...
@@ -45,6 +44,8 @@ Don't change this file in any respect.
 \c__fp_rand_size_int=\count...
 \c__fp_rand_four_int=\count...
 \c__fp_rand_eight_int=\count...
+\c__intarray_sp_dim=\dimen...
+\g__intarray_font_int=\count...
 \l__sort_length_int=\count...
 \l__sort_min_int=\count...
 \l__sort_top_int=\count...
diff --git a/l3kernel/testfiles/m3expl002.uptex.tlg b/l3kernel/testfiles/m3expl002.uptex.tlg
index c7d1c2e..1e052cc 100644
--- a/l3kernel/testfiles/m3expl002.uptex.tlg
+++ b/l3kernel/testfiles/m3expl002.uptex.tlg
@@ -7,7 +7,6 @@ Don't change this file in any respect.
 \l_tmpb_int=\count...
 \g_tmpa_int=\count...
 \g_tmpb_int=\count...
-\g__intarray_font_int=\count...
 \g__kernel_prg_map_int=\count...
 \c_log_iow=\count...
 \l_iow_line_count_int=\count...
@@ -45,6 +44,8 @@ Don't change this file in any respect.
 \c__fp_rand_size_int=\count...
 \c__fp_rand_four_int=\count...
 \c__fp_rand_eight_int=\count...
+\c__intarray_sp_dim=\dimen...
+\g__intarray_font_int=\count...
 \l__sort_length_int=\count...
 \l__sort_min_int=\count...
 \l__sort_top_int=\count...
diff --git a/l3kernel/testfiles/m3expl002.xetex.tlg b/l3kernel/testfiles/m3expl002.xetex.tlg
index 9714709..cecf3f3 100644
--- a/l3kernel/testfiles/m3expl002.xetex.tlg
+++ b/l3kernel/testfiles/m3expl002.xetex.tlg
@@ -7,7 +7,6 @@ Don't change this file in any respect.
 \l_tmpb_int=\count...
 \g_tmpa_int=\count...
 \g_tmpb_int=\count...
-\g__intarray_font_int=\count...
 \g__kernel_prg_map_int=\count...
 \c_log_iow=\count...
 \l_iow_line_count_int=\count...
@@ -42,6 +41,8 @@ Don't change this file in any respect.
 \c__fp_Bigg_leading_shift_int=\count...
 \c__fp_Bigg_middle_shift_int=\count...
 \c__fp_Bigg_trailing_shift_int=\count...
+\c__intarray_sp_dim=\dimen...
+\g__intarray_font_int=\count...
 \l__sort_length_int=\count...
 \l__sort_min_int=\count...
 \l__sort_top_int=\count...
diff --git a/l3kernel/testfiles/m3expl003.luatex.tlg b/l3kernel/testfiles/m3expl003.luatex.tlg
index 41eecea..eaacd0c 100644
--- a/l3kernel/testfiles/m3expl003.luatex.tlg
+++ b/l3kernel/testfiles/m3expl003.luatex.tlg
@@ -1855,16 +1855,6 @@ Defining \g_tmpb_int on line ...
 \g_tmpb_int=\count...
 Defining \c_minus_one on line ...
 Defining \__int_value:w on line ...
-Defining \g__intarray_font_int on line ...
-\g__intarray_font_int=\count...
-Defining \intarray_new:Nn on line ...
-Defining \intarray_count:N on line ...
-Defining \intarray_gset_fast:Nnn on line ...
-Defining \intarray_gset:Nnn on line ...
-Defining \__intarray_gset:Nnn on line ...
-Defining \intarray_item_fast:Nn on line ...
-Defining \intarray_item:Nn on line ...
-Defining \__intarray_item:Nn on line ...
 Defining \flag_new:n on line ...
 Defining \flag_clear:n on line ...
 Defining \__flag_clear:wn on line ...
@@ -4615,6 +4605,18 @@ Defining \__fp_randint_e:wwwNnn on line ...
 Defining \__fp_randint_narrow_e:nnnn on line ...
 Defining \__fp_randint_wide_e:nnnn on line ...
 Defining \__fp_randint_wide_e:wnnn on line ...
+Defining \c__intarray_sp_dim on line ...
+\c__intarray_sp_dim=\dimen...
+Defining \g__intarray_font_int on line ...
+\g__intarray_font_int=\count...
+Defining \intarray_new:Nn on line ...
+Defining \intarray_count:N on line ...
+Defining \intarray_gset_fast:Nnn on line ...
+Defining \intarray_gset:Nnn on line ...
+Defining \__intarray_gset:Nnn on line ...
+Defining \intarray_item_fast:Nn on line ...
+Defining \intarray_item:Nn on line ...
+Defining \__intarray_item:Nn on line ...
 Defining \l__sort_length_int on line ...
 \l__sort_length_int=\count...
 Defining \l__sort_min_int on line ...
diff --git a/l3kernel/testfiles/m3expl003.ptex.tlg b/l3kernel/testfiles/m3expl003.ptex.tlg
index f7dc002..bc03d42 100644
--- a/l3kernel/testfiles/m3expl003.ptex.tlg
+++ b/l3kernel/testfiles/m3expl003.ptex.tlg
@@ -1536,16 +1536,6 @@ Defining \g_tmpb_int on line ...
 \g_tmpb_int=\count...
 Defining \c_minus_one on line ...
 Defining \__int_value:w on line ...
-Defining \g__intarray_font_int on line ...
-\g__intarray_font_int=\count...
-Defining \intarray_new:Nn on line ...
-Defining \intarray_count:N on line ...
-Defining \intarray_gset_fast:Nnn on line ...
-Defining \intarray_gset:Nnn on line ...
-Defining \__intarray_gset:Nnn on line ...
-Defining \intarray_item_fast:Nn on line ...
-Defining \intarray_item:Nn on line ...
-Defining \__intarray_item:Nn on line ...
 Defining \flag_new:n on line ...
 Defining \flag_clear:n on line ...
 Defining \__flag_clear:wn on line ...
@@ -4552,6 +4542,18 @@ Defining \__fp_randint_e:wwwNnn on line ...
 Defining \__fp_randint_narrow_e:nnnn on line ...
 Defining \__fp_randint_wide_e:nnnn on line ...
 Defining \__fp_randint_wide_e:wnnn on line ...
+Defining \c__intarray_sp_dim on line ...
+\c__intarray_sp_dim=\dimen...
+Defining \g__intarray_font_int on line ...
+\g__intarray_font_int=\count...
+Defining \intarray_new:Nn on line ...
+Defining \intarray_count:N on line ...
+Defining \intarray_gset_fast:Nnn on line ...
+Defining \intarray_gset:Nnn on line ...
+Defining \__intarray_gset:Nnn on line ...
+Defining \intarray_item_fast:Nn on line ...
+Defining \intarray_item:Nn on line ...
+Defining \__intarray_item:Nn on line ...
 Defining \l__sort_length_int on line ...
 \l__sort_length_int=\count...
 Defining \l__sort_min_int on line ...
diff --git a/l3kernel/testfiles/m3expl003.tlg b/l3kernel/testfiles/m3expl003.tlg
index 8517a11..58ff752 100644
--- a/l3kernel/testfiles/m3expl003.tlg
+++ b/l3kernel/testfiles/m3expl003.tlg
@@ -1536,16 +1536,6 @@ Defining \g_tmpb_int on line ...
 \g_tmpb_int=\count...
 Defining \c_minus_one on line ...
 Defining \__int_value:w on line ...
-Defining \g__intarray_font_int on line ...
-\g__intarray_font_int=\count...
-Defining \intarray_new:Nn on line ...
-Defining \intarray_count:N on line ...
-Defining \intarray_gset_fast:Nnn on line ...
-Defining \intarray_gset:Nnn on line ...
-Defining \__intarray_gset:Nnn on line ...
-Defining \intarray_item_fast:Nn on line ...
-Defining \intarray_item:Nn on line ...
-Defining \__intarray_item:Nn on line ...
 Defining \flag_new:n on line ...
 Defining \flag_clear:n on line ...
 Defining \__flag_clear:wn on line ...
@@ -4552,6 +4542,18 @@ Defining \__fp_randint_e:wwwNnn on line ...
 Defining \__fp_randint_narrow_e:nnnn on line ...
 Defining \__fp_randint_wide_e:nnnn on line ...
 Defining \__fp_randint_wide_e:wnnn on line ...
+Defining \c__intarray_sp_dim on line ...
+\c__intarray_sp_dim=\dimen...
+Defining \g__intarray_font_int on line ...
+\g__intarray_font_int=\count...
+Defining \intarray_new:Nn on line ...
+Defining \intarray_count:N on line ...
+Defining \intarray_gset_fast:Nnn on line ...
+Defining \intarray_gset:Nnn on line ...
+Defining \__intarray_gset:Nnn on line ...
+Defining \intarray_item_fast:Nn on line ...
+Defining \intarray_item:Nn on line ...
+Defining \__intarray_item:Nn on line ...
 Defining \l__sort_length_int on line ...
 \l__sort_length_int=\count...
 Defining \l__sort_min_int on line ...
diff --git a/l3kernel/testfiles/m3expl003.uptex.tlg b/l3kernel/testfiles/m3expl003.uptex.tlg
index de1aff8..14ec4dd 100644
--- a/l3kernel/testfiles/m3expl003.uptex.tlg
+++ b/l3kernel/testfiles/m3expl003.uptex.tlg
@@ -1536,16 +1536,6 @@ Defining \g_tmpb_int on line ...
 \g_tmpb_int=\count...
 Defining \c_minus_one on line ...
 Defining \__int_value:w on line ...
-Defining \g__intarray_font_int on line ...
-\g__intarray_font_int=\count...
-Defining \intarray_new:Nn on line ...
-Defining \intarray_count:N on line ...
-Defining \intarray_gset_fast:Nnn on line ...
-Defining \intarray_gset:Nnn on line ...
-Defining \__intarray_gset:Nnn on line ...
-Defining \intarray_item_fast:Nn on line ...
-Defining \intarray_item:Nn on line ...
-Defining \__intarray_item:Nn on line ...
 Defining \flag_new:n on line ...
 Defining \flag_clear:n on line ...
 Defining \__flag_clear:wn on line ...
@@ -4552,6 +4542,18 @@ Defining \__fp_randint_e:wwwNnn on line ...
 Defining \__fp_randint_narrow_e:nnnn on line ...
 Defining \__fp_randint_wide_e:nnnn on line ...
 Defining \__fp_randint_wide_e:wnnn on line ...
+Defining \c__intarray_sp_dim on line ...
+\c__intarray_sp_dim=\dimen...
+Defining \g__intarray_font_int on line ...
+\g__intarray_font_int=\count...
+Defining \intarray_new:Nn on line ...
+Defining \intarray_count:N on line ...
+Defining \intarray_gset_fast:Nnn on line ...
+Defining \intarray_gset:Nnn on line ...
+Defining \__intarray_gset:Nnn on line ...
+Defining \intarray_item_fast:Nn on line ...
+Defining \intarray_item:Nn on line ...
+Defining \__intarray_item:Nn on line ...
 Defining \l__sort_length_int on line ...
 \l__sort_length_int=\count...
 Defining \l__sort_min_int on line ...
diff --git a/l3kernel/testfiles/m3expl003.xetex.tlg b/l3kernel/testfiles/m3expl003.xetex.tlg
index d5830f8..faf2018 100644
--- a/l3kernel/testfiles/m3expl003.xetex.tlg
+++ b/l3kernel/testfiles/m3expl003.xetex.tlg
@@ -1853,16 +1853,6 @@ Defining \g_tmpb_int on line ...
 \g_tmpb_int=\count...
 Defining \c_minus_one on line ...
 Defining \__int_value:w on line ...
-Defining \g__intarray_font_int on line ...
-\g__intarray_font_int=\count...
-Defining \intarray_new:Nn on line ...
-Defining \intarray_count:N on line ...
-Defining \intarray_gset_fast:Nnn on line ...
-Defining \intarray_gset:Nnn on line ...
-Defining \__intarray_gset:Nnn on line ...
-Defining \intarray_item_fast:Nn on line ...
-Defining \intarray_item:Nn on line ...
-Defining \__intarray_item:Nn on line ...
 Defining \flag_new:n on line ...
 Defining \flag_clear:n on line ...
 Defining \__flag_clear:wn on line ...
@@ -4592,6 +4582,18 @@ Defining \__fp_parse_word_randint:N on line ...
 Defining message LaTeX/kernel/fp-no-random on line ...
 Defining \__fp_rand_o:Nw on line ...
 Defining \__fp_randint_o:Nw on line ...
+Defining \c__intarray_sp_dim on line ...
+\c__intarray_sp_dim=\dimen...
+Defining \g__intarray_font_int on line ...
+\g__intarray_font_int=\count...
+Defining \intarray_new:Nn on line ...
+Defining \intarray_count:N on line ...
+Defining \intarray_gset_fast:Nnn on line ...
+Defining \intarray_gset:Nnn on line ...
+Defining \__intarray_gset:Nnn on line ...
+Defining \intarray_item_fast:Nn on line ...
+Defining \intarray_item:Nn on line ...
+Defining \__intarray_item:Nn on line ...
 Defining \l__sort_length_int on line ...
 \l__sort_length_int=\count...
 Defining \l__sort_min_int on line ...
diff --git a/l3kernel/testfiles/m3expl004.luatex.tlg b/l3kernel/testfiles/m3expl004.luatex.tlg
index 40ae512..7f7935f 100644
--- a/l3kernel/testfiles/m3expl004.luatex.tlg
+++ b/l3kernel/testfiles/m3expl004.luatex.tlg
@@ -8,7 +8,6 @@ Don't change this file in any respect.
 \l_tmpb_int=\count...
 \g_tmpa_int=\count...
 \g_tmpb_int=\count...
-\g__intarray_font_int=\count...
 \g__kernel_prg_map_int=\count...
 \c_log_iow=\count...
 \l_iow_line_count_int=\count...
@@ -46,6 +45,8 @@ Don't change this file in any respect.
 \c__fp_rand_size_int=\count...
 \c__fp_rand_four_int=\count...
 \c__fp_rand_eight_int=\count...
+\c__intarray_sp_dim=\dimen...
+\g__intarray_font_int=\count...
 \l__sort_length_int=\count...
 \l__sort_min_int=\count...
 \l__sort_top_int=\count...
diff --git a/l3kernel/testfiles/m3expl004.ptex.tlg b/l3kernel/testfiles/m3expl004.ptex.tlg
index 925b57d..b24289c 100644
--- a/l3kernel/testfiles/m3expl004.ptex.tlg
+++ b/l3kernel/testfiles/m3expl004.ptex.tlg
@@ -7,7 +7,6 @@ Don't change this file in any respect.
 \l_tmpb_int=\count...
 \g_tmpa_int=\count...
 \g_tmpb_int=\count...
-\g__intarray_font_int=\count...
 \g__kernel_prg_map_int=\count...
 \c_log_iow=\count...
 \l_iow_line_count_int=\count...
@@ -45,6 +44,8 @@ Don't change this file in any respect.
 \c__fp_rand_size_int=\count...
 \c__fp_rand_four_int=\count...
 \c__fp_rand_eight_int=\count...
+\c__intarray_sp_dim=\dimen...
+\g__intarray_font_int=\count...
 \l__sort_length_int=\count...
 \l__sort_min_int=\count...
 \l__sort_top_int=\count...
diff --git a/l3kernel/testfiles/m3expl004.tlg b/l3kernel/testfiles/m3expl004.tlg
index 089ed0c..399644a 100644
--- a/l3kernel/testfiles/m3expl004.tlg
+++ b/l3kernel/testfiles/m3expl004.tlg
@@ -7,7 +7,6 @@ Don't change this file in any respect.
 \l_tmpb_int=\count...
 \g_tmpa_int=\count...
 \g_tmpb_int=\count...
-\g__intarray_font_int=\count...
 \g__kernel_prg_map_int=\count...
 \c_log_iow=\count...
 \l_iow_line_count_int=\count...
@@ -45,6 +44,8 @@ Don't change this file in any respect.
 \c__fp_rand_size_int=\count...
 \c__fp_rand_four_int=\count...
 \c__fp_rand_eight_int=\count...
+\c__intarray_sp_dim=\dimen...
+\g__intarray_font_int=\count...
 \l__sort_length_int=\count...
 \l__sort_min_int=\count...
 \l__sort_top_int=\count...
diff --git a/l3kernel/testfiles/m3expl004.uptex.tlg b/l3kernel/testfiles/m3expl004.uptex.tlg
index c7d1c2e..1e052cc 100644
--- a/l3kernel/testfiles/m3expl004.uptex.tlg
+++ b/l3kernel/testfiles/m3expl004.uptex.tlg
@@ -7,7 +7,6 @@ Don't change this file in any respect.
 \l_tmpb_int=\count...
 \g_tmpa_int=\count...
 \g_tmpb_int=\count...
-\g__intarray_font_int=\count...
 \g__kernel_prg_map_int=\count...
 \c_log_iow=\count...
 \l_iow_line_count_int=\count...
@@ -45,6 +44,8 @@ Don't change this file in any respect.
 \c__fp_rand_size_int=\count...
 \c__fp_rand_four_int=\count...
 \c__fp_rand_eight_int=\count...
+\c__intarray_sp_dim=\dimen...
+\g__intarray_font_int=\count...
 \l__sort_length_int=\count...
 \l__sort_min_int=\count...
 \l__sort_top_int=\count...
diff --git a/l3kernel/testfiles/m3expl004.xetex.tlg b/l3kernel/testfiles/m3expl004.xetex.tlg
index 9714709..cecf3f3 100644
--- a/l3kernel/testfiles/m3expl004.xetex.tlg
+++ b/l3kernel/testfiles/m3expl004.xetex.tlg
@@ -7,7 +7,6 @@ Don't change this file in any respect.
 \l_tmpb_int=\count...
 \g_tmpa_int=\count...
 \g_tmpb_int=\count...
-\g__intarray_font_int=\count...
 \g__kernel_prg_map_int=\count...
 \c_log_iow=\count...
 \l_iow_line_count_int=\count...
@@ -42,6 +41,8 @@ Don't change this file in any respect.
 \c__fp_Bigg_leading_shift_int=\count...
 \c__fp_Bigg_middle_shift_int=\count...
 \c__fp_Bigg_trailing_shift_int=\count...
+\c__intarray_sp_dim=\dimen...
+\g__intarray_font_int=\count...
 \l__sort_length_int=\count...
 \l__sort_min_int=\count...
 \l__sort_top_int=\count...
diff --git a/l3kernel/testfiles/m3expl006.luatex.tlg b/l3kernel/testfiles/m3expl006.luatex.tlg
index 3107683..4bc02cf 100644
--- a/l3kernel/testfiles/m3expl006.luatex.tlg
+++ b/l3kernel/testfiles/m3expl006.luatex.tlg
@@ -9,7 +9,6 @@ Author: Bruno Le Floch and Joseph Wright
 \l_tmpb_int=\count...
 \g_tmpa_int=\count...
 \g_tmpb_int=\count...
-\g__intarray_font_int=\count...
 \g__kernel_prg_map_int=\count...
 \c_log_iow=\count...
 \l_iow_line_count_int=\count...
@@ -47,6 +46,8 @@ Author: Bruno Le Floch and Joseph Wright
 \c__fp_rand_size_int=\count...
 \c__fp_rand_four_int=\count...
 \c__fp_rand_eight_int=\count...
+\c__intarray_sp_dim=\dimen...
+\g__intarray_font_int=\count...
 \l__sort_length_int=\count...
 \l__sort_min_int=\count...
 \l__sort_top_int=\count...
diff --git a/l3kernel/testfiles/m3expl006.ptex.tlg b/l3kernel/testfiles/m3expl006.ptex.tlg
index c2be7dd..c27f6f5 100644
--- a/l3kernel/testfiles/m3expl006.ptex.tlg
+++ b/l3kernel/testfiles/m3expl006.ptex.tlg
@@ -8,7 +8,6 @@ Author: Bruno Le Floch and Joseph Wright
 \l_tmpb_int=\count...
 \g_tmpa_int=\count...
 \g_tmpb_int=\count...
-\g__intarray_font_int=\count...
 \g__kernel_prg_map_int=\count...
 \c_log_iow=\count...
 \l_iow_line_count_int=\count...
@@ -46,6 +45,8 @@ Author: Bruno Le Floch and Joseph Wright
 \c__fp_rand_size_int=\count...
 \c__fp_rand_four_int=\count...
 \c__fp_rand_eight_int=\count...
+\c__intarray_sp_dim=\dimen...
+\g__intarray_font_int=\count...
 \l__sort_length_int=\count...
 \l__sort_min_int=\count...
 \l__sort_top_int=\count...
diff --git a/l3kernel/testfiles/m3expl006.tlg b/l3kernel/testfiles/m3expl006.tlg
index 5662368..4c83c62 100644
--- a/l3kernel/testfiles/m3expl006.tlg
+++ b/l3kernel/testfiles/m3expl006.tlg
@@ -8,7 +8,6 @@ Author: Bruno Le Floch and Joseph Wright
 \l_tmpb_int=\count...
 \g_tmpa_int=\count...
 \g_tmpb_int=\count...
-\g__intarray_font_int=\count...
 \g__kernel_prg_map_int=\count...
 \c_log_iow=\count...
 \l_iow_line_count_int=\count...
@@ -46,6 +45,8 @@ Author: Bruno Le Floch and Joseph Wright
 \c__fp_rand_size_int=\count...
 \c__fp_rand_four_int=\count...
 \c__fp_rand_eight_int=\count...
+\c__intarray_sp_dim=\dimen...
+\g__intarray_font_int=\count...
 \l__sort_length_int=\count...
 \l__sort_min_int=\count...
 \l__sort_top_int=\count...
diff --git a/l3kernel/testfiles/m3expl006.uptex.tlg b/l3kernel/testfiles/m3expl006.uptex.tlg
index 8706458..5f03509 100644
--- a/l3kernel/testfiles/m3expl006.uptex.tlg
+++ b/l3kernel/testfiles/m3expl006.uptex.tlg
@@ -8,7 +8,6 @@ Author: Bruno Le Floch and Joseph Wright
 \l_tmpb_int=\count...
 \g_tmpa_int=\count...
 \g_tmpb_int=\count...
-\g__intarray_font_int=\count...
 \g__kernel_prg_map_int=\count...
 \c_log_iow=\count...
 \l_iow_line_count_int=\count...
@@ -46,6 +45,8 @@ Author: Bruno Le Floch and Joseph Wright
 \c__fp_rand_size_int=\count...
 \c__fp_rand_four_int=\count...
 \c__fp_rand_eight_int=\count...
+\c__intarray_sp_dim=\dimen...
+\g__intarray_font_int=\count...
 \l__sort_length_int=\count...
 \l__sort_min_int=\count...
 \l__sort_top_int=\count...
diff --git a/l3kernel/testfiles/m3expl006.xetex.tlg b/l3kernel/testfiles/m3expl006.xetex.tlg
index dd75440..7b9579e 100644
--- a/l3kernel/testfiles/m3expl006.xetex.tlg
+++ b/l3kernel/testfiles/m3expl006.xetex.tlg
@@ -8,7 +8,6 @@ Author: Bruno Le Floch and Joseph Wright
 \l_tmpb_int=\count...
 \g_tmpa_int=\count...
 \g_tmpb_int=\count...
-\g__intarray_font_int=\count...
 \g__kernel_prg_map_int=\count...
 \c_log_iow=\count...
 \l_iow_line_count_int=\count...
@@ -43,6 +42,8 @@ Author: Bruno Le Floch and Joseph Wright
 \c__fp_Bigg_leading_shift_int=\count...
 \c__fp_Bigg_middle_shift_int=\count...
 \c__fp_Bigg_trailing_shift_int=\count...
+\c__intarray_sp_dim=\dimen...
+\g__intarray_font_int=\count...
 \l__sort_length_int=\count...
 \l__sort_min_int=\count...
 \l__sort_top_int=\count...
diff --git a/l3kernel/testfiles/m3intarray001.tlg b/l3kernel/testfiles/m3intarray001.tlg
index c22ecb5..dda63be 100644
--- a/l3kernel/testfiles/m3intarray001.tlg
+++ b/l3kernel/testfiles/m3intarray001.tlg
@@ -114,14 +114,12 @@ l. ...  }
 To increase the number of font parameters, you must
 use \fontdimen immediately after the \font is loaded.
 ! Dimension too large.
-<to be read again> 
-                   \scan_stop: 
+<recently read> \c__intarray_sp_dim 
 l. ...  }
 I can't work with sizes bigger than about 19 feet.
 Continue and I'll use the largest value I can.
 ! Dimension too large.
-<to be read again> 
-                   \scan_stop: 
+<recently read> \c__intarray_sp_dim 
 l. ...  }
 I can't work with sizes bigger than about 19 feet.
 Continue and I'll use the largest value I can.
diff --git a/l3kernel/testfiles/m3skip001.tlg b/l3kernel/testfiles/m3skip001.tlg
index bbe3815..fde197e 100644
--- a/l3kernel/testfiles/m3skip001.tlg
+++ b/l3kernel/testfiles/m3skip001.tlg
@@ -60,7 +60,7 @@ l. ...}
 | this name has already been used elsewhere.
 | 
 | The current meaning is:
-|   \dimen163
+|   \dimen164
 |...............................................
 Defining \g_testa_dim on line ...
 \g_testa_dim=\dimen...
diff --git a/l3kernel/testfiles/m3skip005.tlg b/l3kernel/testfiles/m3skip005.tlg
index 7665f96..d1a3c9d 100644
--- a/l3kernel/testfiles/m3skip005.tlg
+++ b/l3kernel/testfiles/m3skip005.tlg
@@ -35,7 +35,7 @@ l. ...  }
 | name has already been used elsewhere.
 | 
 | The current meaning is:
-|   \dimen163
+|   \dimen164
 |...............................................
 Defining \c_my_dim on line ...
 \c_my_dim=\dimen...





More information about the latex3-commits mailing list