Skip to content
Snippets Groups Projects
  • Ben Langmuir's avatar
    9932d9eb
    Invalidate the file system cache entries for files that may rebuild · 9932d9eb
    Ben Langmuir authored
    This reapplies r209910 with a fix for the assertion failures hit on the
    buildbots.
    
    original commit message:
    I thought we could get away without this, but it means that the
    FileEntry objects actually refer to the wrong files, since pcms are not
    updated inplace, they are atomically renamed into place after compiling
    a module.
    
    So we are close to the original behaviour of invalidating the cache for
    all modules being removed, but now we should only invalidate the ones
    that depend on whichever module failed to load.
    
    Unfortunately I haven't come up with a new test that didn't require
    a race between parallel invocations of clang.
    
    <rdar://problem/17038180>
    
    git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@209922 91177308-0d34-0410-b5e6-96231b3b80d8
    9932d9eb
    History
    Invalidate the file system cache entries for files that may rebuild
    Ben Langmuir authored
    This reapplies r209910 with a fix for the assertion failures hit on the
    buildbots.
    
    original commit message:
    I thought we could get away without this, but it means that the
    FileEntry objects actually refer to the wrong files, since pcms are not
    updated inplace, they are atomically renamed into place after compiling
    a module.
    
    So we are close to the original behaviour of invalidating the cache for
    all modules being removed, but now we should only invalidate the ones
    that depend on whichever module failed to load.
    
    Unfortunately I haven't come up with a new test that didn't require
    a race between parallel invocations of clang.
    
    <rdar://problem/17038180>
    
    git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@209922 91177308-0d34-0410-b5e6-96231b3b80d8
Code owners
Assign users and groups as approvers for specific file changes. Learn more.