Skip to content
Snippets Groups Projects
  1. Apr 13, 2021
  2. Jul 19, 2019
  3. Oct 21, 2016
    • Henrik (Grubba) Grubbström's avatar
      encode_value: Use MAPPING_FLAG_NO_SHRINK. · 6331d2c2
      Henrik (Grubba) Grubbström authored
      The mapping with encoded values is intentionally allocated with
      medium sized hashtable. Shrinking it due to use of map_delete()
      is just a waste of cpu.
      
      Attempts to improve performance of encode_value() for objects,
      programs and functions a bit more.
      6331d2c2
  4. Oct 21, 2015
  5. Oct 14, 2015
    • Henrik (Grubba) Grubbström's avatar
      encode_value: Improved support for variant dispatchers. · a41fa30c
      Henrik (Grubba) Grubbström authored
      The variant dispatcher often replaces the reference id to the terminating
      function, which instead gets the reference id that the variant dispatcher
      would have gotten otherwise.
      
      This fixes broken encoding where the terminating function's reference id
      was taken by the next function that was encoded, which in turn caused
      decode_value() to fail with "Bad function identifier offset".
      a41fa30c
  6. Oct 12, 2015
  7. Jul 23, 2015
  8. Mar 04, 2015
    • Per Hedbor's avatar
      encode_value: Slightly faster encode of large integers. · efa9e4e5
      Per Hedbor authored
      Also, do not remember items with only 1 reference, they are rather
      unlikely to show up again later on (objects notwithstanding, and they
      are handled in another case).
      
      This saves a lot of CPU time when a large array of fairly unique
      strings are encoded.
      efa9e4e5
  9. Nov 24, 2014
  10. Nov 05, 2014
  11. Oct 03, 2014
  12. Sep 03, 2014
  13. Aug 22, 2014
  14. Aug 20, 2014
  15. Aug 18, 2014
  16. Jun 19, 2014
  17. May 27, 2014
  18. May 26, 2014
  19. May 23, 2014
  20. May 22, 2014
    • Per Hedbor's avatar
      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
  21. Apr 28, 2014
  22. Apr 27, 2014
  23. Apr 15, 2014
  24. Mar 19, 2014
  25. Mar 17, 2014
  26. Mar 16, 2014
  27. Mar 12, 2014
  28. Jan 12, 2014
Loading