Skip to content
Snippets Groups Projects
  • Per Hedbor's avatar
    7cf016a1
    Binary size: push_constant_text -> push_text when not time-critical. · 7cf016a1
    Per Hedbor authored
    Especially in error handling, and code that does a lot of other string
    operations anyway the speed gain is not wort the 100+ bytes code size
    of each instance of push_constant_text
    
    This saves about 20K of code size (main pike binary), while not really
    changing the speed much.
    
    push_constant_text that seemed to be in at least pseudo-time-critical
    code was kept as they were.
    
    On a related note, push_constant_text(":") four times in a row creates
    four different string variables, for obvious reasons.
    
    Some of the remaining push_constant_text really should have a
    module/file local string variable, even though that is more bothersome
    to create.
    
    It might be nice to have this in .cmod files automatically.
    7cf016a1
    History
    Binary size: push_constant_text -> push_text when not time-critical.
    Per Hedbor authored
    Especially in error handling, and code that does a lot of other string
    operations anyway the speed gain is not wort the 100+ bytes code size
    of each instance of push_constant_text
    
    This saves about 20K of code size (main pike binary), while not really
    changing the speed much.
    
    push_constant_text that seemed to be in at least pseudo-time-critical
    code was kept as they were.
    
    On a related note, push_constant_text(":") four times in a row creates
    four different string variables, for obvious reasons.
    
    Some of the remaining push_constant_text really should have a
    module/file local string variable, even though that is more bothersome
    to create.
    
    It might be nice to have this in .cmod files automatically.