Xinliang David Li
5a6dc4c9b8
[Profile] Add new test
...
To test that online merging is enabled by default.
llvm-svn: 276493
2016-07-22 23:38:58 +00:00
Xinliang David Li
e953933a9f
[Profile] deprecate __llvm_profile_override_default_filename (part2)
...
This eliminates unncessary calls and init functions.
Differential Revision: http://reviews.llvm.org/D22614
llvm-svn: 276355
2016-07-21 23:19:18 +00:00
Xinliang David Li
fa7c6f0d84
[Profile] Add new test to cover %m specifier with shared library (instrumented)
...
llvm-svn: 276229
2016-07-21 02:58:28 +00:00
Xinliang David Li
ab8d32d53a
[Profile] More test clean up to read profile from directory specified by -fprofile-generate=
...
llvm-svn: 276226
2016-07-21 02:14:55 +00:00
Xinliang David Li
f6b2ba687b
[Profile] Cleanup test to use new dir input feature
...
llvm-svn: 276225
2016-07-21 01:53:41 +00:00
Xinliang David Li
eaf238d494
[Profile] implement interface to get profile path prefix
...
Differential Revision: http://reviews.llvm.org/D22546
llvm-svn: 276083
2016-07-20 04:26:09 +00:00
Xinliang David Li
5d2ea9dcf8
[Profile] Test cleanup -- use new lit var for IR PGO tests /NFC
...
llvm-svn: 276036
2016-07-19 22:12:00 +00:00
Xinliang David Li
f26e1d9fb5
[Profile] Introduce lit test vars for IR based instrumentation
...
llvm-svn: 276034
2016-07-19 21:55:55 +00:00
Etienne Bergeron
ab42f4ddba
[compiler-rt] Fix VisualStudio virtual folders layout
...
Summary:
This patch is a refactoring of the way cmake 'targets' are grouped.
It won't affect non-UI cmake-generators.
Clang/LLVM are using a structured way to group targets which ease
navigation through Visual Studio UI. The Compiler-RT projects
differ from the way Clang/LLVM are grouping targets.
This patch doesn't contain behavior changes.
Reviewers: kubabrecka, rnk
Subscribers: wang0109, llvm-commits, kubabrecka, chrisha
Differential Revision: http://reviews.llvm.org/D21952
llvm-svn: 275111
2016-07-11 21:51:56 +00:00
Xinliang David Li
3e9bbddcbb
fix a test bug when executed remotedly
...
llvm-svn: 273693
2016-06-24 17:42:51 +00:00
Sean Silva
537b146798
[libprofile] Define an expansion `%clang_profgen=`
...
llvm-svn: 272498
2016-06-12 04:17:57 +00:00
Xinliang David Li
df5843a532
[profile] fix bot failure on darwin
...
Profile setting accross shared lib is broken on darwin (to be investigated).
Move the test to Linux only for now
llvm-svn: 272404
2016-06-10 16:23:32 +00:00
Xinliang David Li
1d58b8d95e
[profile] add profile path tests for shared lib
...
Test that __llvm_profile_set_filename invoked in
main program is 'visible' to shared lib (overriding
shared libary's profile path set on command line)
llvm-svn: 272375
2016-06-10 06:14:17 +00:00
Xinliang David Li
af053d8b97
[profile] add profile path tests
...
Testing profile path setter predendence.
llvm-svn: 272372
2016-06-10 05:19:38 +00:00
Xinliang David Li
5846d08a2c
Fix win bot failure
...
llvm-svn: 272316
2016-06-09 21:52:24 +00:00
Vedant Kumar
2494d18f84
[profile] Fix test to bail on failed waitpid in instrprof-file_ex.c
...
This resolves PR28066.
Patch by David Binderman!
llvm-svn: 272268
2016-06-09 15:29:59 +00:00
Xinliang David Li
e2ce2e0020
[profile] in-process merging support part-3
...
Differential Revision: http://reviews.llvm.org/D21056
llvm-svn: 272227
2016-06-08 23:43:56 +00:00
David Blaikie
7d492c4ff8
add -f to rm so the test passes the first time it's run the file file is not present
...
(otherwise it just keeps failing at the rm step and never passes... )
llvm-svn: 271959
2016-06-06 23:31:58 +00:00
Sean Silva
7e4e69abe2
[libprofile] Also use `env` for this test.
...
(necessary on Windows)
llvm-svn: 271955
2016-06-06 23:19:23 +00:00
Sean Silva
d7caf5889b
[libprofile] Add %run to a couple tests.
...
llvm-svn: 271947
2016-06-06 22:19:49 +00:00
Xinliang David Li
0891b6d59b
[profile] code cleanup /NFC
...
Address review feedback for better
readability.
llvm-svn: 271922
2016-06-06 18:31:29 +00:00
Xinliang David Li
5cd1f94d4f
[profile] in-process mergeing support (part-2)
...
(Part-1 merging API is in profile runtime)
This patch implements a portable file opening API
with exclusive access for the process. In-process
profile merge requires profile file update to be
atomic/fully sychronized.
llvm-svn: 271864
2016-06-06 03:17:58 +00:00
Xinliang David Li
c012d086fa
reapply r271577 after OSX bug is fixed (hopefully)
...
llvm-svn: 271759
2016-06-04 01:51:25 +00:00
Mehdi Amini
e1db5a0400
Revert "[profile] enable a subtest for vcall inline virtual func"
...
This reverts commit r271577.
The test does not pass on OSX.
llvm-svn: 271617
2016-06-03 00:45:26 +00:00
Xinliang David Li
d4c23fc76f
[profile] enable a subtest for vcall inline virtual func
...
llvm-svn: 271577
2016-06-02 20:12:06 +00:00
Xinliang David Li
66703ebfe5
[profile] Add end-end test of vp for inline virtual functions
...
Make sure inline virtual function's address is properly recorded and
dumped in raw profile so that value profiling does not loss tracking.
(Second part of the test will be enabled after the lowering bug is fixed
in LLVM)
llvm-svn: 271528
2016-06-02 16:24:21 +00:00
Xinliang David Li
9ab45cf1eb
Move test only for the relevant platform
...
llvm-svn: 271098
2016-05-28 04:26:06 +00:00
Xinliang David Li
c3fdce3f1d
[profile] Add a test to ensure runtime allocator is not invoked
...
llvm-svn: 271017
2016-05-27 16:49:29 +00:00
Xinliang David Li
753279e054
Add missing test case changes
...
llvm-svn: 270930
2016-05-26 22:20:39 +00:00
Xinliang David Li
65971297a0
[profile] Add early checking to bypass node pointer update
...
llvm-svn: 270766
2016-05-25 21:27:02 +00:00
Xinliang David Li
7b41393497
[profile] initialize static pool properly
...
Remove dependency on runtime initializer to avoid
issues related to initialization order.
llvm-svn: 270371
2016-05-22 16:36:03 +00:00
Xinliang David Li
4e8754d2cb
[profile] Static counter allocation for value profiling (part-2)
...
Differential Revision: http://reviews.llvm.org/D20460
llvm-svn: 270337
2016-05-21 22:55:45 +00:00
Xinliang David Li
690c31f104
[profile] PROF_ERR, PROF_WARN
...
1) Move common prefix to the macro def
2) Introduced PROF_WARN
3) Make error message unconditionally printed out.
llvm-svn: 270185
2016-05-20 05:15:42 +00:00
Xinliang David Li
5f153e686e
[profile] entry eviction support in value profiler
...
Differential revision: http://reviews.llvm.org/D20408
llvm-svn: 270141
2016-05-19 21:35:34 +00:00
Xinliang David Li
609fae3893
[profile] Eliminate dynamic memory allocation for buffered writer
...
With this change, dynamic memory allocation is only used
for testing purpose. This change is one of the many steps to
make instrument profiler dynamic allocation free.
llvm-svn: 269453
2016-05-13 18:26:26 +00:00
Rong Xu
5da4dab0fc
Reapply r268608
...
Re-enable the tests after IR instrumentation fix (r269146).
Check-in on behalf of davidxl.
llvm-svn: 269219
2016-05-11 18:37:08 +00:00
Xinliang David Li
32d8dc8261
Revert r268130 -- more bot failure
...
llvm-svn: 269142
2016-05-10 23:52:02 +00:00
Xinliang David Li
b788391260
Reapply r268608 after IR instr bug fix
...
llvm-svn: 269130
2016-05-10 22:01:20 +00:00
Xinliang David Li
bde99c3b0f
Remove XFAIL
...
llvm-svn: 268978
2016-05-09 21:47:29 +00:00
Xinliang David Li
e5e4713a56
Re install test reverted by r268866
...
llvm-svn: 268964
2016-05-09 19:51:50 +00:00
Renato Golin
553429898e
[InstrProf] Delete unstable test on ARM. See PR27667
...
llvm-svn: 268866
2016-05-07 20:17:33 +00:00
Xinliang David Li
bedb81e09f
Revert r268608 -- unexplained darwin bot failure
...
llvm-svn: 268779
2016-05-06 19:26:56 +00:00
Renato Golin
039f2ac354
[InstProf] Temporarily removing a test that fails/passes on different configurations (PR27667)
...
llvm-svn: 268748
2016-05-06 16:44:56 +00:00
Renato Golin
00966ed8b9
XFAILing a test on ARM. See PR27667
...
llvm-svn: 268745
2016-05-06 15:34:54 +00:00
Xinliang David Li
2516bcd01c
Add a test of VP with shared lib
...
llvm-svn: 268612
2016-05-05 06:28:12 +00:00
Xinliang David Li
0c09036232
IR value profile testing cleanup
...
llvm-svn: 268608
2016-05-05 05:41:02 +00:00
Alex Denisov
a3f5c4c047
Replace hardcoded comment at 'lit.site.cfg.in'
...
At the moment almost every lit.site.cfg.in contains two lines comment:
## Autogenerated by LLVM/Clang configuration.
# Do not edit!
The patch adds variable LIT_SITE_CFG_IN_HEADER, that is replaced from
configure_lit_site_cfg with the note and some useful information.
llvm-svn: 266520
2016-04-16 07:03:45 +00:00
Betul Buyukkurt
785b5a8950
[PGO] Fix the buildbots for r266229.
...
llvm-svn: 266240
2016-04-13 20:02:07 +00:00
Vedant Kumar
62f0576c5c
[profile] Remove quotes around env variable, NFC
...
llvm-svn: 264824
2016-03-30 04:36:10 +00:00
Vedant Kumar
989bc4bfd6
[profile] Test error reporting by writing to a temp directory
...
This test case is meant to check whether verbose error logging works. It
does this by _failing_ to write a profile to a path corresponding to a
directory. Make this clearer by writing to a temporary directory.
Patch suggested by Sean Silva!
llvm-svn: 264817
2016-03-30 01:30:47 +00:00
Sean Silva
2c6d2b3c5e
[libprofile] Make this test express intent a bit better.
...
This also makes it work on PS4 a bit better.
For running the libprofile tests on PS4, we are sneaking environment
variables through on the command line, so the extra argument for
LLVM_PROFILE_FILE was messing up the simple `argc < 2` check.
llvm-svn: 264812
2016-03-30 00:25:15 +00:00
Xinliang David Li
bd54f5bd25
Fix comment in test
...
llvm-svn: 264792
2016-03-29 21:53:08 +00:00
Vedant Kumar
dcafeddfb7
[profile] Make a test work if run by the super-user
...
llvm-svn: 264773
2016-03-29 19:24:58 +00:00
Sean Silva
c9d546c291
[libprofile] Use one fewer -mllvm option in this test.
...
AFAIK there is still no way to avoid `-mllvm -disable-vp=false`
currently.
llvm-svn: 264682
2016-03-28 22:23:03 +00:00
Sean Silva
7434e1d01f
[libprofile] Make this test not depend on previous runs.
...
llvm-svn: 264626
2016-03-28 19:34:22 +00:00
Sean Silva
7d27e77820
[libprofile] Make this test a bit more specific
...
llvm-svn: 264625
2016-03-28 19:25:19 +00:00
Xinliang David Li
f6d61afc14
Make vp merge test more robust
...
llvm-svn: 264521
2016-03-26 20:44:03 +00:00
Sean Silva
d63f1f1ff2
[libprofile] Adjust dummy condition to be more forgiving.
...
On PS4, we have to fake environment variables by passing extra command
line arguments, so the dummy test `argc > 1` was failing.
The condition is just a dummy condition that the compiler can't fold
away, so the number is arbitrary as long as the condition is false.
Increase the number it compares against.
llvm-svn: 264491
2016-03-26 04:01:57 +00:00
Sean Silva
58cba2b27d
[libprofile] Add some missing `env` prefixes on commands.
...
llvm-svn: 264490
2016-03-26 03:37:45 +00:00
Richard Smith
11598143f4
Stop depending on the keys in a hash table being in a particular order.
...
llvm-svn: 264488
2016-03-26 03:06:42 +00:00
Vedant Kumar
5a697bbda3
[profile] Add integration test to validate PGO function names
...
Differential Revision: http://reviews.llvm.org/D18485
llvm-svn: 264480
2016-03-25 23:56:23 +00:00
Xinliang David Li
d4312d8af0
Fix a minor bug in test
...
llvm-svn: 263028
2016-03-09 17:13:18 +00:00
Filipe Cabecinhas
facd697007
[Fix r262788] Fix missed prototype with the old llvm* name.
...
llvm-svn: 262927
2016-03-08 14:22:13 +00:00
Xinliang David Li
cf1a8d6912
[PGO] internal API name cleanups (for better consistency)
...
llvm-svn: 262788
2016-03-06 04:18:13 +00:00
Xinliang David Li
31f251f1f0
[PGO] Add API to check compatibility of profile data in buffer
...
This is needed by client which uses in-process merge API.
llvm-svn: 262736
2016-03-04 18:58:30 +00:00
Xinliang David Li
dd12e9a8c0
[PGO] Add API for profile merge from buffer
...
Differential Revision: http://reviews.llvm.org/D17831
llvm-svn: 262644
2016-03-03 18:54:46 +00:00
Xinliang David Li
783fb1f642
Fix minor bug in test
...
llvm-svn: 262514
2016-03-02 20:59:11 +00:00
Xinliang David Li
80d4b898d1
Test cleanups
...
llvm-svn: 262162
2016-02-28 00:54:28 +00:00
Xinliang David Li
adbb7b7b57
[PGO] add a test for available_externally functions
...
llvm-svn: 262161
2016-02-28 00:45:13 +00:00
Xinliang David Li
3d731c5e44
minor test runline cleanup
...
llvm-svn: 261361
2016-02-19 20:28:51 +00:00
Xinliang David Li
f56aeef645
[PGO] Enable profile-rt testing on all supported targets
...
Differential Revision: http://reviews.llvm.org/D17361
llvm-svn: 261344
2016-02-19 17:52:28 +00:00
Xinliang David Li
0fc35d0a42
Add test coverage for default linker
...
llvm-svn: 261261
2016-02-18 21:11:37 +00:00
Xinliang David Li
00ec96b5a0
Rollback 260394 -- 32bit test needs more config support
...
llvm-svn: 260402
2016-02-10 18:38:27 +00:00
Xinliang David Li
ee195caf66
Add tests for -m32
...
llvm-svn: 260394
2016-02-10 17:57:55 +00:00
Xinliang David Li
a3be895b61
[PGO] Simpflify test and increase coverage
...
llvm-svn: 260142
2016-02-08 20:46:26 +00:00
Xinliang David Li
879e14330e
Test update : tighten up checks
...
llvm-svn: 260052
2016-02-07 20:08:36 +00:00
Xinliang David Li
e5c9b5fe5c
Revert 260050 -- new test case should not be included
...
llvm-svn: 260051
2016-02-07 20:06:36 +00:00
Xinliang David Li
c1cf60b339
Test update : tighten up checks
...
llvm-svn: 260050
2016-02-07 20:05:06 +00:00
Xinliang David Li
abf6d973f4
Add coverage tests (defaulted constructors/destructor)
...
llvm-svn: 260041
2016-02-07 16:31:13 +00:00
Vedant Kumar
a06e8ca6c5
[profile] Support hostname expansion in LLVM_PROFILE_FILE
...
This patch adds support for expanding "%h" out to the machine hostname
in the LLVM_PROFILE_FILE environment variable.
Patch by Daniel Waters!
Differential Revision: http://reviews.llvm.org/D16371
llvm-svn: 259272
2016-01-29 23:52:11 +00:00
Xinliang David Li
0747c5c808
Fix a bug in test case (both ir,fe instr were turned on
...
llvm-svn: 258913
2016-01-27 07:42:41 +00:00
Xinliang David Li
3aa113321b
[PGO] Add a test case covering IR based VP instrumentation
...
llvm-svn: 258732
2016-01-25 22:33:29 +00:00
Xinliang David Li
19c45e2e12
[PGO] Add test case covering clang FE based VP instrumentation
...
llvm-svn: 258730
2016-01-25 22:09:30 +00:00
Xinliang David Li
8b1f80779b
Resubmit test case with more restriction
...
The original submittion triggered a BFD linker bug (2.24) on Aarch64 only. Before
the build bot is upgraded to more recent linker, restrict the test to be
executed only with gold linker.
llvm-svn: 258437
2016-01-21 21:59:19 +00:00
Renato Golin
533c32bdda
Revert "[coverage] Add a test case to cover coverage testing with comdat"
...
This reverts commit r258255 and r258274, as it was breaking the AArch64 bot.
llvm-svn: 258314
2016-01-20 14:27:50 +00:00
Vedant Kumar
0b9df44cf1
[test] Add a short explanation to instrprof-comdat.h
...
llvm-svn: 258274
2016-01-20 02:31:25 +00:00
Xinliang David Li
6900596040
[coverage] Add a test case to cover coverage testing with comdat
...
llvm-svn: 258255
2016-01-20 00:11:36 +00:00
Xinliang David Li
944cd4d318
[Coverage] add test cases for coverage testing
...
1. One test covering coverage-mapping interfaction with linker GC
2. one test covering coverage-mapping with shared libaries
llvm-svn: 257782
2016-01-14 18:15:54 +00:00
Xinliang David Li
31ad54298e
[PGO] Add Linux specific test cases for profile runtime
...
(second try with more strict config check)
Currently, only gc-sections related tests are added. Gold
linker currently is required due to PR19161 of bfd linker.
llvm-svn: 257456
2016-01-12 07:18:53 +00:00
Xinliang David Li
452f1a5576
Revert r257444 : arm build bots failure
...
llvm-svn: 257446
2016-01-12 05:39:26 +00:00
Xinliang David Li
cfefae8a14
[PGO] Add Linux specific test cases for profile runtime
...
Currently, only gc-sections related tests are added. Gold
linker currently is required due to PR19161 of bfd linker.
llvm-svn: 257444
2016-01-12 04:54:24 +00:00
Xinliang David Li
385612c5b4
Fix comment of test
...
llvm-svn: 257443
2016-01-12 03:57:14 +00:00
Xinliang David Li
a692421adb
[PGO] Add runtime hook so that IR instrumentation can override version
...
IR level instrumentation needs to override version with variant bits.
No change for FE instrumentation is needed. Test case is added to
detect version mismatch.
llvm-svn: 257230
2016-01-08 23:31:57 +00:00
Xinliang David Li
ec58c819fa
Use more strict checks for merge Profile results
...
llvm-svn: 257151
2016-01-08 06:18:18 +00:00
Xinliang David Li
6d464151a6
[PGO] Update test to match sorted output
...
llvm-svn: 257146
2016-01-08 05:45:54 +00:00
Xinliang David Li
cda3bc2062
[PGO]: Refactor VP data writer
...
Extract the buffered filer writer code used by value profile
writer and turn it into common/sharable buffered fileIO
interfaces. Added a test case for the buffered file writer and
rewrite the VP dumping using the new APIs.
llvm-svn: 256604
2015-12-29 23:54:41 +00:00
Xinliang David Li
54dd683726
[PGO]: Do not update Data->Value field during profile write.
...
The profile reader no longer depends on this field to be updated and point
to owning func's vp data. The VP data also no longer needs to be allocated
in a contiguous memory space.
Differential Revision: http://reviews.llvm.org/D15258
llvm-svn: 256543
2015-12-29 07:13:59 +00:00
Xinliang David Li
69773fb0d2
Add more testing checks
...
llvm-svn: 256538
2015-12-29 06:42:12 +00:00
Xinliang David Li
ebc4c25a50
[PGO] Make the test case more robust
...
Make the testing results not depending on function
output order. This allows more strict result check.
llvm-svn: 256537
2015-12-29 06:28:44 +00:00
Xinliang David Li
c30c88a240
Check test results more strictly (NFC)
...
llvm-svn: 256536
2015-12-29 06:26:43 +00:00