[PATCH] D52452: The change the timestamp of llvmcache-foo file to meet the thinLTO prune policy

LuoYuanke via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Sep 24 22:49:02 PDT 2018


LuoYuanke created this revision.
LuoYuanke added a reviewer: Jianping.
Herald added subscribers: llvm-commits, dexonsmith, inglorion.

The case will randomly fail if we test it with command "
while llvm-lit test/tools/gold/X86/cache.ll ; do true; done". It is because the llvmcache-foo file is younger than llvmcache-349F039B8EB076D412007D82778442BED3148C4E and llvmcache-A8107945C65C2B2BBEE8E61AA604C311D60D58D6.  But due to timestamp precision reason their timestamp is the same. Given the same timestamp, the file prune policy is to remove bigger size file first, so mostly foo file is removed for its bigger size. And the files size is under threshold after deleting foo file. That's what test case expect.

However sometimes, the precision is enough to measure that timestamp of llvmcache-349F039B8EB076D412007D82778442BED3148C4E and llvmcache-A8107945C65C2B2BBEE8E61AA604C311D60D58D6 are smaller than foo, so llvmcache-349F039B8EB076D412007D82778442BED3148C4E and llvmcache-A8107945C65C2B2BBEE8E61AA604C311D60D58D6 are deleted first. Since the files size is still above the file size threshold after deleting the 2 files, the foo file is also deleted. And then the test case fails, because it expect only one file should be deleted instead of 3.


Repository:
  rL LLVM

https://reviews.llvm.org/D52452

Files:
  test/tools/gold/X86/cache.ll


Index: test/tools/gold/X86/cache.ll
===================================================================
--- test/tools/gold/X86/cache.ll
+++ test/tools/gold/X86/cache.ll
@@ -53,6 +53,9 @@
 ; RUN: ls %t.cache | count 5
 
 
+; Increase the age of llvmcache-foo
+; RUN: touch -r %t.cache/llvmcache-foo -d '-2 minutes' %t.cache/llvmcache-foo
+
 ; This should remove it.
 ; RUN: %gold -m elf_x86_64 -plugin %llvmshlibdir/LLVMgold%shlibext \
 ; RUN:     --plugin-opt=thinlto \


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D52452.166810.patch
Type: text/x-patch
Size: 471 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180925/6c0b938e/attachment.bin>


More information about the llvm-commits mailing list