1. 13 Mar, 2018 1 commit
    • Use non-human-readable mangled names for types · e600c0aa
      Olli Etuaho authored
      The new mangled name format is as follows:
      
      The first character is a hex digit from 0 to F that encodes vector or
      matrix size. For scalars, structs etc. the character is 0.
      
      Then, if it's a struct, the mangled name continues with "{s", followed
      by mangled names of fields, and ends with "}".
      
      If it's an interface block, the mangled name continues with "{i",
      followed by mangled names of fields, and ends with "}".
      
      If it's anything else, the second alphabetic character encodes the
      basic type. Characters are assigned to basic types in the enumeration
      order.
      
      If it's an array, the mangled name has a suffix [array_size].
      
      This saves a few kilobytes from the binary size. The effect on symbol
      lookup speed seems mostly marginal.
      
      BUG=angleproject:2267
      TEST=angle_unittests
      
      Change-Id: I26e65dcb48c3478df9a719ffff9c15f2fd12e293
      Reviewed-on: https://chromium-review.googlesource.com/945910
      Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
      Reviewed-by: 's avatarCorentin Wallez <cwallez@chromium.org>
  2. 12 Mar, 2018 12 commits
  3. 10 Mar, 2018 1 commit
  4. 09 Mar, 2018 12 commits
  5. 08 Mar, 2018 8 commits
  6. 07 Mar, 2018 6 commits