c36d033c08c6148846f61cc7aee4fe0f523af1e5 |
|
08-Jun-2012 |
Andrew Trick <atrick@apple.com> |
Fix Target->Codegen dependence. Bulk move of TargetInstrInfo implementation into TargetInstrInfoImpl. This is dirty because the code isn't part of TargetInstrInfoImpl class, nor should it be, because the methods are not target hooks. However, it's the current mechanism for keeping libTarget useful outside the backend. You'll get a not-so-nice link error if you invoke a TargetInstrInfo method that depends on CodeGen. The TargetInstrInfoImpl class should probably be removed since it doesn't really solve this problem. To really fix this, we probably need separate interfaces for the CodeGen/nonCodeGen sides of TargetInstrInfo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158212 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
397f4e3583b36b23047fec06b1648f0771cd6fe3 |
|
07-Jun-2012 |
Andrew Trick <atrick@apple.com> |
Continue factoring computeOperandLatency. Use it for ARM hasHighOperandLatency. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158164 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
b7e0289fb320c8440ba5eed121a8b932dbd806a2 |
|
05-Jun-2012 |
Andrew Trick <atrick@apple.com> |
misched: API for minimum vs. expected latency. Minimum latency determines per-cycle scheduling groups. Expected latency determines critical path and cost. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@158021 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
397fc4874efe9c17e737d4c5c50bd19dc3bf27f5 |
|
08-May-2012 |
Jakob Stoklund Olesen <stoklund@2pi.dk> |
Add an MF argument to TRI::getPointerRegClass() and TII::getRegClass(). The getPointerRegClass() hook can return register classes that depend on the calling convention of the current function (ptr_rc_tailcall). So far, we have been able to infer the calling convention from the subtarget alone, but as we add support for multiple calling conventions per target, that no longer works. Patch by Yiannis Tsiouris! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@156328 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
028700f544deeea423ce9b516e190e4e970e3c6c |
|
15-Dec-2011 |
Nick Lewycky <nicholas@mxc.ca> |
Move parts of lib/Target that use CodeGen into lib/CodeGen. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146702 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
32f9763017f4329a0da75648655d63c9d7b91130 |
|
09-Dec-2011 |
Evan Cheng <evan.cheng@apple.com> |
Move isUnpredicatedTerminator() default implementation to TargetInstrInfoImpl to break Target's dependency on CodeGen. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146247 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
5a96b3dad2f634c9081c8b2b6c2575441dc5a2bd |
|
07-Dec-2011 |
Evan Cheng <evan.cheng@apple.com> |
Add bundle aware API for querying instruction properties and switch the code generator to it. For non-bundle instructions, these behave exactly the same as the MC layer API. For properties like mayLoad / mayStore, look into the bundle and if any of the bundled instructions has the property it would return true. For properties like isPredicable, only return true if *all* of the bundled instructions have the property. For properties like canFoldAsLoad, isCompare, conservatively return false for bundles. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@146026 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
4db3cffe94a5285239cc0056f939c6b74a5ca0b6 |
|
01-Jul-2011 |
Evan Cheng <evan.cheng@apple.com> |
Hide the call to InitMCInstrInfo into tblgen generated ctor. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134244 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
ab8be96fd30ca9396e6b84fdddf1ac6208984cad |
|
29-Jun-2011 |
Evan Cheng <evan.cheng@apple.com> |
Sink SubtargetFeature and TargetInstrItineraries (renamed MCInstrItineraries) into MC. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134049 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
d5b03f252c0db6b49a242abab63d7c5a260fceae |
|
28-Jun-2011 |
Evan Cheng <evan.cheng@apple.com> |
Move CallFrameSetupOpcode and CallFrameDestroyOpcode to TargetInstrInfo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134030 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
e837dead3c8dc3445ef6a0e2322179c57e264a13 |
|
28-Jun-2011 |
Evan Cheng <evan.cheng@apple.com> |
- Rename TargetInstrDesc, TargetOperandInfo to MCInstrDesc and MCOperandInfo and sink them into MC layer. - Added MCInstrInfo, which captures the tablegen generated static data. Chang TargetInstrInfo so it's based off MCInstrInfo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134021 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
15993f83a419950f06d2879d6701530ae6449317 |
|
27-Jun-2011 |
Evan Cheng <evan.cheng@apple.com> |
More refactoring. Move getRegClass from TargetOperandInfo to TargetInstrInfo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@133944 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
d31d304f83f9c8df6870057509414b8d004bc8da |
|
24-Mar-2011 |
Jim Grosbach <grosbach@apple.com> |
Clean up assembly statement separator support. The MC asm lexer wasn't honoring a non-default (anything but ';') statement separator. Fix that, and generalize a bit to support multi-character statement separators. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128227 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
6e8f4c404825b79f9b9176483653f1aa927dfbde |
|
24-Dec-2010 |
Andrew Trick <atrick@apple.com> |
whitespace git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122539 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
476b242fe7a61e5f9ac6214b0bc5c680d24f152e |
|
19-Dec-2010 |
Nick Lewycky <nicholas@mxc.ca> |
Add missing standard headers. Patch by Joerg Sonnenberger! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122193 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
2402123413080aee8e9418e4f08b8613ef5cc360 |
|
19-Dec-2010 |
Nick Lewycky <nicholas@mxc.ca> |
Add missing std:: prefixes to some calls. C++ doesn't require that <cfoo> headers provide symbols outside namespace std and the LLVM coding standards state that we should prefix all of them. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122192 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
8239daf7c83a65a189c352cce3191cdc3bbfe151 |
|
03-Nov-2010 |
Evan Cheng <evan.cheng@apple.com> |
Two sets of changes. Sorry they are intermingled. 1. Fix pre-ra scheduler so it doesn't try to push instructions above calls to "optimize for latency". Call instructions don't have the right latency and this is more likely to use introduce spills. 2. Fix if-converter cost function. For ARM, it should use instruction latencies, not # of micro-ops since multi-latency instructions is completely executed even when the predicate is false. Also, some instruction will be "slower" when they are predicated due to the register def becoming implicit input. rdar://8598427 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118135 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
c8141dfc7f983cb04e65d8acd6bcbdc8e4b8a0ae |
|
26-Oct-2010 |
Evan Cheng <evan.cheng@apple.com> |
Use instruction itinerary to determine what instructions are 'cheap'. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117348 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
a0792de66c8364d47b0a688c7f408efb7b10f31b |
|
06-Oct-2010 |
Evan Cheng <evan.cheng@apple.com> |
- Add TargetInstrInfo::getOperandLatency() to compute operand latencies. This allow target to correctly compute latency for cases where static scheduling itineraries isn't sufficient. e.g. variable_ops instructions such as ARM::ldm. This also allows target without scheduling itineraries to compute operand latencies. e.g. X86 can return (approximated) latencies for high latency instructions such as division. - Compute operand latencies for those defined by load multiple instructions, e.g. ldm and those used by store multiple instructions, e.g. stm. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115755 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
064312de8641043b084603aa9a6b409bc794eed2 |
|
15-Sep-2010 |
Bob Wilson <bob.wilson@apple.com> |
Spelling fix. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113978 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
3ef1c8759a20167457eb7fd82ebcaffe7ccaa1d1 |
|
10-Sep-2010 |
Evan Cheng <evan.cheng@apple.com> |
Teach if-converter to be more careful with predicating instructions that would take multiple cycles to decode. For the current if-converter clients (actually only ARM), the instructions that are predicated on false are not nops. They would still take machine cycles to decode. Micro-coded instructions such as LDM / STM can potentially take multiple cycles to decode. If-converter should take treat them as non-micro-coded simple instructions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113570 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
5f54ce347368105260be2cec497b6a4199dc5789 |
|
09-Sep-2010 |
Evan Cheng <evan.cheng@apple.com> |
For each instruction itinerary class, specify the number of micro-ops each instruction in the class would be decoded to. Or zero if the number of uOPs must be determined dynamically. This will be used to determine the cost-effectiveness of predicating a micro-coded instruction. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113513 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
a606d955de3b0f777131d74162eb6f11b5f95d75 |
|
18-Jun-2010 |
Dan Gohman <gohman@apple.com> |
Start TargetRegisterClass indices at 0 instead of 1, so that MachineRegisterInfo doesn't have to confusingly allocate an extra entry. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106296 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
33adcfb4d217f5f23d9bde8ba02b8e48f9605fc5 |
|
22-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
rename TAI -> MAI, being careful not to make MAILJMP instructions :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79777 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
af76e592c7f9deff0e55c13dbb4a34f07f1c7f64 |
|
22-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
Rename TargetAsmInfo (and its subclasses) to MCAsmInfo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79763 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
d90183d25dcbc0eabde56319fed4e8d6ace2e6eb |
|
02-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
Move the getInlineAsmLength virtual method from TAI to TII, where the only real caller (GetFunctionSizeInBytes) uses it. The custom ARM implementation of this is basically reimplementing an assembler poorly for negligible gain. It should be removed IMNSHO, but I'll leave that to ARMish folks to decide. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77877 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
b6bbfebdc683a6a123410bca1175e14d264d4bc2 |
|
02-Aug-2009 |
Chris Lattner <sabre@nondot.org> |
move a virtual method body to its .cpp file to avoid a #include in a header. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77874 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
2a3868849438a0a0ad4f9a50f2b94eb1639b554e |
|
29-Jul-2009 |
Chris Lattner <sabre@nondot.org> |
inline the global 'getInstrOperandRegClass' function into its callers now that TargetOperandInfo does the heavy lifting. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77508 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
cb778a8634454c70d88955b3732f330a6cbe5b07 |
|
29-Jul-2009 |
Chris Lattner <sabre@nondot.org> |
1. Introduce a new TargetOperandInfo::getRegClass() helper method and convert code to using it, instead of having lots of things poke the isLookupPtrRegClass() method directly. 2. Make PointerLikeRegClass contain a 'kind' int, and store it in the existing regclass field of TargetOperandInfo when the isLookupPtrRegClass() predicate is set. Make getRegClass pass this into TargetRegisterInfo::getPointerRegClass(), allowing targets to have multiple ptr_rc things. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@77504 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
d923fc621ff5b5e500977edf9236c9e34e8d7ebc |
|
05-May-2009 |
Evan Cheng <evan.cheng@apple.com> |
Move getInstrOperandRegClass from the scheduler to TargetInstrInfo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@70950 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
d9df5017040489303acb57bdd8697ef0f8bafc08 |
|
09-Apr-2009 |
Bob Wilson <bob.wilson@apple.com> |
Fix pr3954. The register scavenger asserts for inline assembly with register destinations that are tied to source operands. The TargetInstrDescr::findTiedToSrcOperand method silently fails for inline assembly. The existing MachineInstr::isRegReDefinedByTwoAddr was very close to doing what is needed, so this revision makes a few changes to that method and also renames it to isRegTiedToUseOperand (for consistency with the very similar isRegTiedToDefOperand and because it handles both two-address instructions and inline assembly with tied registers). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68714 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
749c6f6b5ed301c84aac562e414486549d7b98eb |
|
07-Jan-2008 |
Chris Lattner <sabre@nondot.org> |
rename TargetInstrDescriptor -> TargetInstrDesc. Make MachineInstr::getDesc return a reference instead of a pointer, since it can never be null. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45695 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
349c4952009525b27383e2120a6b3c998f39bd09 |
|
07-Jan-2008 |
Chris Lattner <sabre@nondot.org> |
Move a bunch more accessors from TargetInstrInfo to TargetInstrDescriptor git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45680 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
69244300b8a0112efb44b6273ecea4ca6264b8cf |
|
07-Jan-2008 |
Chris Lattner <sabre@nondot.org> |
Rename MachineInstr::getInstrDescriptor -> getDesc(), which reflects that it is cheap and efficient to get. Move a variety of predicates from TargetInstrInfo into TargetInstrDescriptor, which makes it much easier to query a predicate when you don't have TII around. Now you can use MI->getDesc()->isBranch() instead of going through TII, and this is much more efficient anyway. Not all of the predicates have been moved over yet. Update old code that used MI->getInstrDescriptor()->Flags to use the new predicates in many places. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45674 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
641055225092833197efe8e5bce01d50bcf1daae |
|
01-Jan-2008 |
Chris Lattner <sabre@nondot.org> |
Fix a problem where lib/Target/TargetInstrInfo.h would include and use a header file from libcodegen. This violates a layering order: codegen depends on target, not the other way around. The fix to this is to split TII into two classes, TII and TargetInstrInfoImpl, which defines stuff that depends on libcodegen. It is defined in libcodegen, where the base is not. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45475 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
8aa797aa51cd4ea1ec6f46f4891a6897944b75b2 |
|
31-Dec-2007 |
Chris Lattner <sabre@nondot.org> |
Add new shorter predicates for testing machine operands for various types: e.g. MO.isMBB() instead of MO.isMachineBasicBlock(). I don't plan on switching everything over, so new clients should just start using the shorter names. Remove old long accessors, switching everything over to use the short accessor: getMachineBasicBlock() -> getMBB(), getConstantPoolIndex() -> getIndex(), setMachineBasicBlock -> setMBB(), etc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45464 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
f73823000e2d5d6e1cf65bdf5a107297e18d35fb |
|
30-Dec-2007 |
Chris Lattner <sabre@nondot.org> |
More cleanups for MachineOperand: - Eliminate the static "print" method for operands, moving it into MachineOperand::print. - Change various set* methods for register flags to take a bool for the value to set it to. Remove unset* methods. - Group methods more logically by operand flavor in MachineOperand.h git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45461 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
9a1ceaedc282f0cae31f2723f4d6c00c7b88fe90 |
|
30-Dec-2007 |
Chris Lattner <sabre@nondot.org> |
Use MachineOperand::getImm instead of MachineOperand::getImmedValue. Likewise setImmedValue -> setImm git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45453 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
4ee451de366474b9c228b4e5fa573795a715216d |
|
29-Dec-2007 |
Chris Lattner <sabre@nondot.org> |
Remove attribution from file headers, per discussion on llvmdev. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45418 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
92dfe2001e96f6e2b6d327e8816f38033f88b295 |
|
14-Sep-2007 |
Dan Gohman <gohman@apple.com> |
Remove isReg, isImm, and isMBB, and change all their users to use isRegister, isImmediate, and isMachineBasicBlock, which are equivalent, and more popular. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41958 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
14c46554039ac26c431d72725663409eeab864ae |
|
07-Jul-2007 |
Evan Cheng <evan.cheng@apple.com> |
isUnpredicatedTerminator should treat conditional branches as unpredicated terminator. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37960 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
0e4a276c72e5f5e6093c2efeb15ee57eda4f471a |
|
05-Jul-2007 |
Evan Cheng <evan.cheng@apple.com> |
Do not check isPredicated() on non-predicable instructions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37891 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
bfd2ec4a8ef51ebe982363a7e8d7156fdb3827d8 |
|
08-Jun-2007 |
Evan Cheng <evan.cheng@apple.com> |
Add a utility routine to check for unpredicated terminator instruction. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37528 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
f277ee4be7edabb759a7f78138b693d72d0c263f |
|
29-May-2007 |
Evan Cheng <evan.cheng@apple.com> |
Add missing const qualifiers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37341 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
d90733035d9ba66df97fc47d35f7eb3b2903f96c |
|
23-May-2007 |
Evan Cheng <evan.cheng@apple.com> |
Rename a parameter. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37307 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
d9e9efb253978ce4a3683085d1f75c5734143bf9 |
|
17-May-2007 |
Evan Cheng <evan.cheng@apple.com> |
Remove. Not needed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37139 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
e425956b7258eef15a83f0d98e43a67dc7703965 |
|
17-May-2007 |
Evan Cheng <evan.cheng@apple.com> |
Default implementation of TargetInstrInfo::getBlockSize(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37138 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
02c602b333ed2a1a13a17981f3c3f2f5463d5e5c |
|
16-May-2007 |
Evan Cheng <evan.cheng@apple.com> |
PredicateInstruction returns true if the operation was successful. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37124 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
2eb80fa433fbc9257bb7ef236e48092981cc3b3c |
|
16-May-2007 |
Evan Cheng <evan.cheng@apple.com> |
Add default implementation of PredicateInstruction(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37123 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
cc22a7a2adfea3fc318a6d8ca0c692a8e892105b |
|
08-Dec-2006 |
Evan Cheng <evan.cheng@apple.com> |
Move findTiedToSrcOperand to TargetInstrDescriptor. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32366 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
3cc3816cd4dc92fbb0a2de93bdebb68dfcea31d5 |
|
08-Dec-2006 |
Evan Cheng <evan.cheng@apple.com> |
Use MI's TargetInstrDescriptor. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32352 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
ba59a1e453e110f7b84233f07613f9c5d9a39b87 |
|
01-Dec-2006 |
Evan Cheng <evan.cheng@apple.com> |
Match TargetInstrInfo changes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32098 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
6430bf0449e0ff5e8d344d3107f4ef2306de80ad |
|
30-Nov-2006 |
Evan Cheng <evan.cheng@apple.com> |
Remove the ugly SPARCV9 TargetInstrDescriptors hack. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32033 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
ff608a7a691af31a0cd0413993c0d3aa8c4e7de4 |
|
15-Nov-2006 |
Evan Cheng <evan.cheng@apple.com> |
commuteInstruction should propagate kill / dead info. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31763 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
e6ae14e1f413987f3de31a7cad1b20a7893f8cae |
|
02-Nov-2006 |
Evan Cheng <evan.cheng@apple.com> |
Rename git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31364 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
981b5bd7080db6dbbac6931863d8a2e6d1fc5a0c |
|
02-Nov-2006 |
Evan Cheng <evan.cheng@apple.com> |
Added getTiedToSrcOperand() to check for two-address'ness. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31360 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
31ff1ff348bce63f5d802530c5a99f6a4d6db104 |
|
12-May-2006 |
Evan Cheng <evan.cheng@apple.com> |
Typo! How did we commute nodes before?! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28229 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
e53f4a055f74bded20d6129b4724ddd17fd199f6 |
|
04-May-2006 |
Chris Lattner <sabre@nondot.org> |
Move some methods out of MachineInstr into MachineOperand git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28102 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
a29526275b45e6cebe569fe0b5dcacf9a55064b9 |
|
20-Apr-2006 |
Chris Lattner <sabre@nondot.org> |
remove some v9 specific code git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@27900 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
7847fcac174bdda94373447676526af1bb1bc630 |
|
22-Apr-2005 |
Misha Brukman <brukman+llvm@gmail.com> |
Convert tabs to spaces git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21452 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
f976c856fcc5055f3fc7d9f070d72c2d027c1d9d |
|
22-Apr-2005 |
Misha Brukman <brukman+llvm@gmail.com> |
Remove trailing whitespace git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21422 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
167b10cba4eff57718feeb30f567e324b96a9263 |
|
19-Jan-2005 |
Chris Lattner <sabre@nondot.org> |
Finegrainify namespacification Add default impl of commuteInstruction Add notes about ugly V9 code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19684 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
de0ceb58bac96a6df133a04cf92bb220a16e12fd |
|
27-Jul-2004 |
Brian Gaeke <gaeke@uiuc.edu> |
ConstantTypeMustBeLoaded has been incorporated into SparcV9PreSelection, its only user. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15294 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
dce363d5ecf0f6add5541c853eb33214d910812f |
|
29-Feb-2004 |
Chris Lattner <sabre@nondot.org> |
Adjust to change in TII ctor arguments git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11987 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
0f5918a0b6dba521be3c254718d1f41fad6b8d30 |
|
15-Jan-2004 |
Brian Gaeke <gaeke@uiuc.edu> |
Make this assertion more self-explanatory. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10879 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
d0fde30ce850b78371fd1386338350591f9ff494 |
|
11-Nov-2003 |
Brian Gaeke <gaeke@uiuc.edu> |
Put all LLVM code into the llvm namespace, as per bug 109. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9903 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
b576c94c15af9a440f69d9d03c2afead7971118c |
|
20-Oct-2003 |
John Criswell <criswell@uiuc.edu> |
Added LLVM project notice to the top of every C++ source file. Header files will be on the way. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9298 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
d7908f679eeadc108e09e2aca5faba0b5410ea4a |
|
27-Jun-2003 |
Brian Gaeke <gaeke@uiuc.edu> |
Nice tasty llc fixes. These should fix LLC for x86 for everything in SingleSource except oopack and Oscar. (Sorry, Oscar.) include/llvm/Target/TargetInstrInfo.h: Remove virtual print method. Add accessors for ImplicitUses/Defs. lib/Target/TargetInstrInfo.cpp: Remove virtual print method. If you really wanted this, just use MI->print(O, TM); instead... lib/Target/X86: FloatingPoint.cpp: ...like this. X86InstrInfo.h: Remove virtual print method. Define the PrintImplUses target-specific flag bit. X86InstrInfo.def: Add the PrintImplUses flag to all the instructions which implicitly use CL, because the assembler needs to see the CL in order to generate the right instruction. Printer.cpp: Ditch fnIndex at Chris's request. Now we use CurrentFnName to name constants in the constant pool for each function instead. This avoids keeping state between runOnMachineFunction() invocations, which is a no-no. Having MangledGlobals be global is a bogon I'd like to get rid of too, but making it a static member of Printer causes link errors (why???). Make NumberForBB into a member of Printer instead of a global, too. Make printOp and printMemReference into methods of Printer. X86InstrInfo::print is now Printer::printMachineInstruction, because TargetInstrInfo::print is history. (Because of this, we have to qualify the names of some TargetInstrInfo methods we call.) Print out the ImplicitUses field of any instruction we print that has the PrintImplUses bit set. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@6924 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
3501feab811c86c9659248a4875fc31a3165f84d |
|
14-Jan-2003 |
Chris Lattner <sabre@nondot.org> |
Rename MachineInstrInfo -> TargetInstrInfo git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5272 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
08084145c652afdec1b21404ead287fb79964a14 |
|
13-Jan-2003 |
Chris Lattner <sabre@nondot.org> |
Start renaming MachineInstrInfo -> TargetInstrInfo git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@5221 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
3b49394f4fa37f6a2086e5a91d934385baeeddbf |
|
18-Nov-2002 |
Chris Lattner <sabre@nondot.org> |
Pass on a targetmachine git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4736 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
a187ed92ae22d0548bd06ee088fd3187008be9d6 |
|
17-Nov-2002 |
Chris Lattner <sabre@nondot.org> |
Add default implementation of printing interface git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4727 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
adc101bbcd39a276c37d7ca1b20526c1016379b4 |
|
29-Oct-2002 |
Chris Lattner <sabre@nondot.org> |
Move TargetInstrDescriptors to MachineInstrInfo.cpp git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4391 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
047bbafb99a353ed68e60eab147f5822a09a99ea |
|
29-Oct-2002 |
Chris Lattner <sabre@nondot.org> |
MachineInstrInfo doesn't need a TargetMachine git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4372 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|
93fa70598c88fe14ebe4b3752daab4ea265233e1 |
|
29-Oct-2002 |
Chris Lattner <sabre@nondot.org> |
Seperate code out of TargetMachine into MachineInstrInfo git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4368 91177308-0d34-0410-b5e6-96231b3b80d8
/external/llvm/lib/Target/TargetInstrInfo.cpp
|