1. 15 12月, 2017 1 次提交
  2. 08 12月, 2017 1 次提交
  3. 07 12月, 2017 1 次提交
  4. 06 12月, 2017 1 次提交
  5. 02 12月, 2017 2 次提交
  6. 01 12月, 2017 1 次提交
  7. 28 11月, 2017 2 次提交
  8. 26 11月, 2017 1 次提交
  9. 07 11月, 2017 1 次提交
  10. 02 11月, 2017 1 次提交
  11. 24 9月, 2017 2 次提交
  12. 18 9月, 2017 1 次提交
  13. 11 9月, 2017 1 次提交
  14. 02 9月, 2017 1 次提交
  15. 11 8月, 2017 1 次提交
  16. 08 8月, 2017 1 次提交
  17. 30 7月, 2017 4 次提交
  18. 28 7月, 2017 4 次提交
  19. 12 6月, 2017 1 次提交
    • F
      Add `EndRegion` statement kind to MIR. · 1d315cf7
      Felix S. Klock II 提交于
       * Emit `EndRegion` for every code-extent for which we observe a
         borrow. To do this, we needed to thread source info back through
         to `fn in_scope`, which makes this commit a bit more painful than
         one might have expected.
      
       * There is `end_region` emission in `Builder::pop_scope` and in
         `Builder::exit_scope`; the first handles falling out of a scope
         normally, the second handles e.g. `break`.
      
       * Remove `EndRegion` statements during the erase_regions mir
         transformation.
      
       * Preallocate the terminator block, and throw an `Unreachable` marker
         on it from the outset. Then overwrite that Terminator as necessary
         on demand.
      
       * Instead of marking the scope as needs_cleanup after seeing a
         borrow, just treat every scope in the chain as being part of the
         diverge_block (after any *one* of them has separately signalled
         that it needs cleanup, e.g. due to having a destructor to run).
      
       * Allow for resume terminators to be patched when looking up drop flags.
      
         (In particular, `MirPatch::new` has an explicit code path,
         presumably previously unreachable, that patches up such resume
         terminators.)
      
       * Make `Scope` implement `Debug` trait.
      
       * Expanded a stray comment: we do not emit StorageDead on diverging
         paths, but that end behavior might not be desirable.
      1d315cf7
  20. 06 6月, 2017 1 次提交
  21. 28 5月, 2017 1 次提交
  22. 24 5月, 2017 1 次提交
  23. 12 4月, 2017 1 次提交
  24. 06 4月, 2017 1 次提交