Skip to content
Snippets Groups Projects
  • Jakub Jelinek's avatar
    447c32c5
    libcpp: Adjust lang_defaults · 447c32c5
    Jakub Jelinek authored
    The table over the years turned to be very wide, 147 columns
    and any addition would add a couple of new ones.
    We need a 28x23 bit matrix right now.
    
    This patch changes the formatting, so that we need just 2 columns
    per new feature and so we have some room for expansion.
    In addition, the patch changes it to bitfields, which reduces
    .rodata by 532 bytes (so 5.75x reduction of the variable) and
    on x86_64-linux grows the cpp_set_lang function by 26 bytes (8.4%
    growth).
    
    2024-08-20  Jakub Jelinek  <jakub@redhat.com>
    
    	* init.cc (struct lang_flags): Change all members from char
    	typed fields to unsigned bit-fields.
    	(lang_defaults): Change formatting of the initializer so that it
    	fits to 68 columns rather than 147.
    447c32c5
    History
    libcpp: Adjust lang_defaults
    Jakub Jelinek authored
    The table over the years turned to be very wide, 147 columns
    and any addition would add a couple of new ones.
    We need a 28x23 bit matrix right now.
    
    This patch changes the formatting, so that we need just 2 columns
    per new feature and so we have some room for expansion.
    In addition, the patch changes it to bitfields, which reduces
    .rodata by 532 bytes (so 5.75x reduction of the variable) and
    on x86_64-linux grows the cpp_set_lang function by 26 bytes (8.4%
    growth).
    
    2024-08-20  Jakub Jelinek  <jakub@redhat.com>
    
    	* init.cc (struct lang_flags): Change all members from char
    	typed fields to unsigned bit-fields.
    	(lang_defaults): Change formatting of the initializer so that it
    	fits to 68 columns rather than 147.