llvm-6502/include/llvm
Shuxin Yang 84fca61ca5 rdar://12100355 (part 1)
This revision attempts to recognize following population-count pattern:

 while(a) { c++; ... ; a &= a - 1; ... },
  where <c> and <a>could be used multiple times in the loop body.

 TODO: On X8664 and ARM, __buildin_ctpop() are not expanded to a efficent 
instruction sequence, which need to be improved in the following commits.

Reviewed by Nadav, really appreciate!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168931 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-29 19:38:54 +00:00
..
ADT typo 2012-11-16 21:33:35 +00:00
Analysis Fast-math optimization: fold multiply by zero 2012-11-27 00:46:26 +00:00
Assembly
Bitcode Add back support for reading and parsing 'deplibs'. 2012-11-28 08:41:48 +00:00
CodeGen One more step towards making doInitialization and doFinalization useful for 2012-11-29 17:47:05 +00:00
Config llvm/Config/config.h.cmake: Good bye, Kevin! We won't honor authors in comments. 2012-10-29 16:07:28 +00:00
DebugInfo Rewrite DIContext interface to take an object. Update all callers. 2012-11-12 21:40:38 +00:00
ExecutionEngine Fix comment formatting in RuntimeDyld.h 2012-11-27 22:53:57 +00:00
MC Add an MCPhysReg typedef to replace naked uint16_t. 2012-11-29 02:39:28 +00:00
Object Fix a memory leak in MachOObjectFile. 2012-11-29 19:14:11 +00:00
Support Add backreference matching capabilities to Support/Regex, with 2012-11-28 19:00:02 +00:00
TableGen Remove exception handling usage from tblgen. 2012-10-25 20:33:17 +00:00
Target rdar://12100355 (part 1) 2012-11-29 19:38:54 +00:00
Transforms Add options to AddressSanitizer passes to make them configurable by frontend. 2012-11-29 18:14:24 +00:00
AddressingMode.h
Argument.h Remove unnecessary classof()'s 2012-10-11 23:30:49 +00:00
Attributes.h Make the AttrListPtr object a part of the LLVMContext. 2012-11-20 05:09:20 +00:00
AutoUpgrade.h
BasicBlock.h Remove unnecessary classof()'s 2012-10-11 23:30:49 +00:00
CallGraphSCCPass.h
CallingConv.h Add the Erlang/HiPE calling convention, patch by Yiannis Tsiouris. 2012-11-16 12:36:39 +00:00
CMakeLists.txt
Constant.h Make GlobalOpt be conservative with TLS variables (PR14309) 2012-11-15 11:40:00 +00:00
Constants.h Typo 2012-11-17 17:59:44 +00:00
DataLayout.h Do not handle void types in DataLayout. Patch by Patrick Hägglund. 2012-11-15 14:45:30 +00:00
DebugInfo.h 80-column and whitespace fixups. 2012-11-20 00:15:36 +00:00
DefaultPasses.h
DerivedTypes.h Remove unnecessary classof()'s 2012-10-11 23:30:49 +00:00
DIBuilder.h Revert "Use the 'count' attribute instead of the 'upper_bound' attribute." 2012-11-13 23:30:43 +00:00
Function.h Use the Attributes::get method which takes an AttrVal value directly to simplify the code a bit. No functionality change. 2012-10-16 05:23:31 +00:00
GlobalAlias.h Remove unnecessary classof()'s 2012-10-11 23:30:49 +00:00
GlobalValue.h Remove unnecessary classof()'s 2012-10-11 23:30:49 +00:00
GlobalVariable.h Remove unnecessary classof()'s 2012-10-11 23:30:49 +00:00
GVMaterializer.h
InitializePasses.h Initial commit of MemorySanitizer. 2012-11-29 09:57:20 +00:00
InlineAsm.h [inline asm] Implement mayLoad and mayStore for inline assembly. In general, 2012-10-30 19:11:54 +00:00
InstrTypes.h Revert the series of commits starting with r166578 which introduced the 2012-11-01 08:07:29 +00:00
Instruction.def
Instruction.h Instruction::isAssociative() returns true for fmul/fadd if they are tagged "unsafe" mode. 2012-11-29 01:47:31 +00:00
Instructions.h Add a getAddressSpace method to the GEP instruction to mirror that of 2012-11-01 11:25:55 +00:00
IntrinsicInst.h va_start, va_end, va_copy: InstrinsicInst subclasses and InstVisitor support. 2012-10-29 09:39:03 +00:00
Intrinsics.h Attributes Rewrite 2012-10-15 04:46:55 +00:00
Intrinsics.td Add llvm.ceil, llvm.trunc, llvm.rint, llvm.nearbyint intrinsics. 2012-11-15 06:51:10 +00:00
IntrinsicsARM.td
IntrinsicsHexagon.td
IntrinsicsMips.td
IntrinsicsNVVM.td
IntrinsicsPowerPC.td
IntrinsicsX86.td Add support of RTM from TSX extension 2012-11-08 07:28:54 +00:00
IntrinsicsXCore.td
IRBuilder.h Fast-math: Extend IRBuilder to have settable FastMathFlags to create instructions with 2012-11-28 21:16:19 +00:00
LinkAllPasses.h Add a cost model analysis that allows us to estimate the cost of IR-level instructions. 2012-11-02 21:48:17 +00:00
LinkAllVMCore.h
Linker.h
LLVMContext.h
MDBuilder.h
Metadata.h Remove unnecessary classof()'s 2012-10-11 23:30:49 +00:00
Module.h Remove the dependent libraries feature. 2012-11-27 09:55:56 +00:00
OperandTraits.h
Operator.h Fast-math comments and convenience method 2012-11-28 21:11:25 +00:00
Pass.h One more step towards making doInitialization and doFinalization useful for 2012-11-29 17:47:05 +00:00
PassAnalysisSupport.h
PassManager.h One more step towards making doInitialization and doFinalization useful for 2012-11-29 17:47:05 +00:00
PassManagers.h Revert r168635 "Step towards implementation of pass manager with doInitialization and doFinalization per module detangled from runOn?? calls, still has temporary code not to break ASAN to be removed when that pass conforms to the proposed model". 2012-11-27 00:53:24 +00:00
PassRegistry.h
PassSupport.h
SymbolTableListTraits.h
TargetTransformInfo.h rdar://12100355 (part 1) 2012-11-29 19:38:54 +00:00
Type.h Teach Type::getPointerAddressSpace to look through pointer vectors 2012-11-01 09:37:49 +00:00
TypeBuilder.h
TypeFinder.h
Use.h
User.h Remove unnecessary classof()'s 2012-10-11 23:30:49 +00:00
Value.h Remove unnecessary classof()'s 2012-10-11 23:30:49 +00:00
ValueSymbolTable.h