1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-25 05:52:53 +02:00
llvm-mirror/lib
Hal Finkel 9df9f25590 [PowerPC] On the A2, popcnt[dw] are very slow
The A2 cores support the popcntw/popcntd instructions, but they're microcoded,
and slower than our default software emulation. Specifically, popcnt[dw] take
approximately 74 cycles, whereas our software emulation takes only 24-28
cycles.

I've added a new target feature to indicate a slow popcnt[dw], instead of just
removing the existing target feature from the a2/a2q processor models, because:
  1. This allows us to return more accurate information via the TTI interface
     (I recognize that this currently makes no practical difference)
  2. Is hopefully easier to understand (it allows the core's features to match
     its manual while still having the desired effect).

llvm-svn: 264600
2016-03-28 17:52:08 +00:00
..
Analysis Fix Clang-tidy modernize-deprecated-headers warnings in some files; other minor fixes. 2016-03-28 17:40:08 +00:00
AsmParser IR: Stop upgrading !llvm.loop attachments via MDString 2016-03-25 00:56:13 +00:00
Bitcode BitcodeWriter: Replace dead code with an assertion, NFC 2016-03-28 00:03:12 +00:00
CodeGen Introduce MachineFunctionProperties and the AllVRegsAllocated property 2016-03-28 17:05:30 +00:00
DebugInfo Fix Clang-tidy modernize-deprecated-headers warnings in some files; other minor fixes. 2016-03-28 17:40:08 +00:00
ExecutionEngine More more change need as part of r264187 where ErrorOr<> was added 2016-03-23 21:20:16 +00:00
Fuzzer [libFuzzer] use fflush after every Printf 2016-03-25 20:31:26 +00:00
IR [Verifier] Reject PHIs using defs from own block. 2016-03-26 23:32:57 +00:00
IRReader
LibDriver
LineEditor Fix Clang-tidy modernize-deprecated-headers warnings in some files; other minor fixes. 2016-03-28 17:40:08 +00:00
Linker Fix another case where we were unconditionally linking linkonce GVs. 2016-03-24 15:23:01 +00:00
LTO ThinLTO: use the callgraph from the combined index to drive the FunctionImporter 2016-03-26 05:40:34 +00:00
MC MC: Don't access the filesystem in MCContext's constructor 2016-03-22 22:24:29 +00:00
Object Remove else after return 2016-03-28 17:45:48 +00:00
ObjectYAML [lanai] Add Lanai backend. 2016-03-28 13:09:54 +00:00
Option
Passes [PM] Rename the CRTP mixin base classes for the new pass manager to 2016-03-11 10:33:22 +00:00
ProfileData Revert "[PGO] Fix name encoding for ObjC-like functions" 2016-03-28 16:14:07 +00:00
Support C++11 is required, remove some preprocessor checks for it 2016-03-28 11:13:03 +00:00
TableGen [TableGen] Fix typos in comments. NFC 2016-02-26 06:50:27 +00:00
Target [PowerPC] On the A2, popcnt[dw] are very slow 2016-03-28 17:52:08 +00:00
Transforms [SimlifyCFG] Prevent passes from destroying canonical loop structure, especially for nested loops 2016-03-28 17:22:25 +00:00
CMakeLists.txt Move ObjectYAML code to a new library. 2016-03-01 19:15:06 +00:00
LLVMBuild.txt Add LLVMBuild for ObjectYAML. 2016-03-01 21:29:33 +00:00