1. 19 2月, 2018 1 次提交
  2. 17 2月, 2018 1 次提交
  3. 02 8月, 2017 1 次提交
  4. 16 7月, 2017 1 次提交
  5. 29 6月, 2017 1 次提交
  6. 08 4月, 2017 2 次提交
  7. 12 10月, 2016 1 次提交
  8. 08 10月, 2016 1 次提交
  9. 04 8月, 2016 1 次提交
  10. 02 8月, 2016 1 次提交
  11. 26 1月, 2016 1 次提交
  12. 16 10月, 2015 1 次提交
  13. 22 8月, 2015 1 次提交
  14. 18 6月, 2015 1 次提交
  15. 06 6月, 2015 1 次提交
  16. 29 4月, 2015 1 次提交
  17. 29 3月, 2015 1 次提交
  18. 15 1月, 2015 1 次提交
  19. 14 1月, 2015 1 次提交
  20. 09 1月, 2015 1 次提交
    • T
      Implements a new approach to generating unique synthesized member names (see... · 94711411
      TomasMatousek 提交于
      Implements a new approach to generating unique synthesized member names (see also the attached email).
      
           1) Assigns each member a "member ordinal" - the index in the members array of the containing type. The ordinal is propagated thru lowering rewriters which uses it to make generated names unique.
           2) We no longer calculate "overload ordinal" for names of state machine types, we use the member ordinal of the async/iterator method instead.
           3) Removes GenerateTempNumber from TypeCompiationState. Combination of method ordinal and other indices is used to make generated names unique:
           - Display classes use ordinal of the method containing the lambda and closure scope ordinal (unique within a method). Static display class is shared across all non-generic methods of a containing class and thus doesn't need a unique number in name (it;'s simple named "c<>").
           - Lambda methods include containing method ordinal (unless emitted to a display class whose name already includes it) and lambda ordinal (unique within a method).
           - The same for fields caching lambdas.
           - Dynamic site containers - no longer include method name in the type name, instead method ordinal is used.
      
           4) Expression compiler - rename generated type to "<>x" to avoid confusion with "<>c" static display class.
           5) Avoid replacing "." with "_" in member names, other than type names. While displaying stack frames the EE extracts method name from synthesized lambdas method names and displays it. Thus we were displaying "I_F" instead of "I.F" for explicitly implemented methods.
            In type names replace "." with "-". Replacing with "_" lead to duplicate type names in emitted assembly (2 iterator methods with names "I_F" and "I.F" - explicitly implemented iface method). (changeset 1390962)
      94711411
  21. 06 10月, 2014 1 次提交
  22. 02 10月, 2014 1 次提交
  23. 15 8月, 2014 1 次提交
    • T
      Reduce the variety of optimization related compilation option values used in... · f58f5ab8
      TomasMatousek 提交于
      Reduce the variety of optimization related compilation option values used in tests to: Release, DebuggableRelease and Debug.
      
      By default tests should use Release, which enables all optimizations.
      PDB tests should mostly use Debug.
      We should have targeted tests for DebuggableRelease, for optimizations that are selectively disabled to improve debuggability of release builds.
      
         (changeset 1312277)
      f58f5ab8
  24. 15 4月, 2014 1 次提交
  25. 19 3月, 2014 1 次提交