llvm-project/llvm/test/tools/llvm-mca/X86
Andrea Di Biagio dda9032314 [llvm-mca] Correctly update the resource strategy for processor resources with multiple units.
When looking at the tests committed by Roman at r346587, I noticed that numbers
reported by the resource pressure for PdAGU01 were wrong.

In particular, according to the aut-generated CHECK lines in tests
memcpy-like-test.s and store-throughput.s, resource pressure for PdAGU01
was not uniformly distributed among the two AGEN pipes.

It turns out that the reason why pressure was not correctly distributed, was
because the "resource selection strategy" object associated with PdAGU01 was not
correctly updated on the event of AGEN pipe used.
As a result, llvm-mca was not simulating a round-robin pipeline allocation for
PdAGU01. Instead, PdAGU1 was always prioritized over PdAGU0.

This patch fixes the issue; now processor resource strategy objects for
resources declaring multiple units, are correctly notified in the event of
"resource used".

llvm-svn: 346650
2018-11-12 13:09:39 +00:00
..
Atom [X86] Fix scheduler class for BTmi instructions 2018-09-30 20:19:16 +00:00
BdVer2 [llvm-mca] Correctly update the resource strategy for processor resources with multiple units. 2018-11-12 13:09:39 +00:00
Broadwell [X86] Fix VZEROUPPER scheduling info on SNB,HSW,BDW,SXL,SKX. 2018-11-09 09:49:06 +00:00
BtVer2 [llvm-mca] Add extra counters for move elimination in view RegisterFileStatistics. 2018-11-01 18:04:39 +00:00
Generic [X86] Fix VZEROUPPER scheduling info on SNB,HSW,BDW,SXL,SKX. 2018-11-09 09:49:06 +00:00
Haswell [X86] Fix VZEROUPPER scheduling info on SNB,HSW,BDW,SXL,SKX. 2018-11-09 09:49:06 +00:00
SLM [X86] ALU/ADC RMW instructions should use the WriteRMW sequence class 2018-10-03 10:01:13 +00:00
SandyBridge [X86] Fix VZEROUPPER scheduling info on SNB,HSW,BDW,SXL,SKX. 2018-11-09 09:49:06 +00:00
SkylakeClient [X86] Fix VZEROUPPER scheduling info on SNB,HSW,BDW,SXL,SKX. 2018-11-09 09:49:06 +00:00
SkylakeServer [X86] Fix VZEROUPPER scheduling info on SNB,HSW,BDW,SXL,SKX. 2018-11-09 09:49:06 +00:00
Znver1 [LLVM-MCA][X86] Add missing VCMPESTR/VCMPESTR tests 2018-09-30 18:19:00 +00:00
bextr-read-after-ld.s AMD BdVer2 (Piledriver) Initial Scheduler model 2018-10-27 20:46:30 +00:00
bzhi-read-after-ld.s [utils] Ensure that update_mca_test_checks.py writes prefixes in alphabetical order 2018-10-04 14:42:19 +00:00
cpus.s AMD BdVer2 (Piledriver) Initial Scheduler model 2018-10-27 20:46:30 +00:00
default-iterations.s [llvm-mca] Add fields "Total uOps" and "uOps Per Cycle" to the report generated by the SummaryView. 2018-08-29 17:56:39 +00:00
dispatch_width.s [llvm-mca] Add fields "Total uOps" and "uOps Per Cycle" to the report generated by the SummaryView. 2018-08-29 17:56:39 +00:00
fma3-read-after-ld-1.s [utils] Ensure that update_mca_test_checks.py writes prefixes in alphabetical order 2018-10-04 14:42:19 +00:00
fma3-read-after-ld-2.s [utils] Ensure that update_mca_test_checks.py writes prefixes in alphabetical order 2018-10-04 14:42:19 +00:00
in-order-cpu.s Replace unused output filenames with /dev/null in tests 2018-07-02 18:16:44 +00:00
intel-syntax.s [MC] Separate masm integer literal lexer support from inline asm 2018-10-24 20:23:57 +00:00
invalid-assembly-sequence.s [llvm-mca] Make sure not to end the test files with an empty line. 2018-06-04 11:48:46 +00:00
invalid-cpu.s Replace unused output filenames with /dev/null in tests 2018-07-02 18:16:44 +00:00
invalid-empty-file.s Replace unused output filenames with /dev/null in tests 2018-07-02 18:16:44 +00:00
lit.local.cfg
llvm-mca-markers-1.s [llvm-mca] Make sure not to end the test files with an empty line. 2018-06-04 11:48:46 +00:00
llvm-mca-markers-2.s [llvm-mca] Add fields "Total uOps" and "uOps Per Cycle" to the report generated by the SummaryView. 2018-08-29 17:56:39 +00:00
llvm-mca-markers-3.s [llvm-mca] Add fields "Total uOps" and "uOps Per Cycle" to the report generated by the SummaryView. 2018-08-29 17:56:39 +00:00
llvm-mca-markers-4.s [llvm-mca] Add fields "Total uOps" and "uOps Per Cycle" to the report generated by the SummaryView. 2018-08-29 17:56:39 +00:00
llvm-mca-markers-5.s [llvm-mca] Add fields "Total uOps" and "uOps Per Cycle" to the report generated by the SummaryView. 2018-08-29 17:56:39 +00:00
llvm-mca-markers-6.s [llvm-mca] Make sure not to end the test files with an empty line. 2018-06-04 11:48:46 +00:00
llvm-mca-markers-7.s [llvm-mca] Make sure not to end the test files with an empty line. 2018-06-04 11:48:46 +00:00
no-sched-model.s [llvm-mca] Make sure not to end the test files with an empty line. 2018-06-04 11:48:46 +00:00
option-all-stats-1.s [utils] Allow better identification of matching blocks in update_mca_test_checks.py 2018-09-28 15:38:56 +00:00
option-all-stats-2.s [utils] Allow better identification of matching blocks in update_mca_test_checks.py 2018-09-28 15:38:56 +00:00
option-all-views-1.s [utils] Allow better identification of matching blocks in update_mca_test_checks.py 2018-09-28 15:38:56 +00:00
option-all-views-2.s [utils] Stricter checking from update_mca_test_checks.py 2018-09-28 15:39:09 +00:00
option-no-stats-1.s [llvm-mca] Add fields "Total uOps" and "uOps Per Cycle" to the report generated by the SummaryView. 2018-08-29 17:56:39 +00:00
read-after-ld-1.s AMD BdVer2 (Piledriver) Initial Scheduler model 2018-10-27 20:46:30 +00:00
read-after-ld-2.s [X86] Fix Skylake ReadAfterLd for PADDrm etc. 2018-10-16 09:50:16 +00:00
read-after-ld-3.s [llvm-mca][x86] Add PR36951 ReadAfterLd test case 2018-10-04 16:26:56 +00:00
register-file-statistics.s [NFC][MCA][BdVer2] Add bdver2 runline into register-file-statistics.s test 2018-11-10 10:56:58 +00:00
scheduler-queue-usage.s AMD BdVer2 (Piledriver) Initial Scheduler model 2018-10-27 20:46:30 +00:00
sqrt-rsqrt-rcp-memop.s AMD BdVer2 (Piledriver) Initial Scheduler model 2018-10-27 20:46:30 +00:00
variable-blend-read-after-ld-1.s AMD BdVer2 (Piledriver) Initial Scheduler model 2018-10-27 20:46:30 +00:00
variable-blend-read-after-ld-2.s AMD BdVer2 (Piledriver) Initial Scheduler model 2018-10-27 20:46:30 +00:00