aboutsummaryrefslogtreecommitdiffstats
path: root/include/llvm
Commit message (Collapse)AuthorAgeFilesLines
* Adjust a comment to reflect reality.Reid Spencer2007-01-281-4/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33607 91177308-0d34-0410-b5e6-96231b3b80d8
* Propagate changes from my local tree. This patch includes:Anton Korobeynikov2007-01-285-19/+25
| | | | | | | | | | | | | | | | | | | | | | | | 1. New parameter attribute called 'inreg'. It has meaning "place this parameter in registers, if possible". This is some generalization of gcc's regparm(n) attribute. It's currently used only in X86-32 backend. 2. Completely rewritten CC handling/lowering code inside X86 backend. Merged stdcall + c CCs and fastcall + fast CC. 3. Dropped CSRET CC. We cannot add struct return variant for each target-specific CC (e.g. stdcall + csretcc and so on). 4. Instead of CSRET CC introduced 'sret' parameter attribute. Setting in on first attribute has meaning 'This is hidden pointer to structure return. Handle it gently'. 5. Fixed small bug in llvm-extract + add new feature to FunctionExtraction pass, which relinks all internal-linkaged callees from deleted function to external linkage. This will allow further linking everything together. NOTEs: 1. Documentation will be updated soon. 2. llvm-upgrade should be improved to translate csret => sret. Before this, there will be some unexpected test fails. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33597 91177308-0d34-0410-b5e6-96231b3b80d8
* provide a definition for uintptr_tChris Lattner2007-01-271-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33592 91177308-0d34-0410-b5e6-96231b3b80d8
* Make SmallSet<whatever*, N> faster by transparently implementing it withChris Lattner2007-01-271-0/+5
| | | | | | | | SmallPtrSet. Some clients will need to use SmallPtrSet directly though if they need to iterate over the set. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33584 91177308-0d34-0410-b5e6-96231b3b80d8
* add some missing APIChris Lattner2007-01-271-0/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33583 91177308-0d34-0410-b5e6-96231b3b80d8
* Give SmallSet a reasonable fallback if it gets large: use an std::set.Chris Lattner2007-01-271-27/+51
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33582 91177308-0d34-0410-b5e6-96231b3b80d8
* implement SmallPtrSet::eraseChris Lattner2007-01-271-3/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33581 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a limitation of SmallPtrSet. Before it would assert if the smallsizeChris Lattner2007-01-271-2/+30
| | | | | | | was not a power of two. Now it rounds up to the next power of two internally. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33580 91177308-0d34-0410-b5e6-96231b3b80d8
* add some comments on the algorithmChris Lattner2007-01-271-1/+20
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33579 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a new SmallSet ADT specialized for pointers.Chris Lattner2007-01-271-0/+165
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33577 91177308-0d34-0410-b5e6-96231b3b80d8
* Add some comments, fix an 80 cols violation.Reid Spencer2007-01-271-12/+16
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33576 91177308-0d34-0410-b5e6-96231b3b80d8
* Accessor for the TargetELFWriterInfo class object.Bill Wendling2007-01-271-1/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33572 91177308-0d34-0410-b5e6-96231b3b80d8
* The TargetELFWriterInfo class holds target-specific information for the ELF ↵Bill Wendling2007-01-271-0/+43
| | | | | | writer. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33570 91177308-0d34-0410-b5e6-96231b3b80d8
* simplify insert interfaceChris Lattner2007-01-271-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33567 91177308-0d34-0410-b5e6-96231b3b80d8
* clean up commentChris Lattner2007-01-271-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33566 91177308-0d34-0410-b5e6-96231b3b80d8
* Handle multiple functions, properly mangle symbols, and fix support forNate Begeman2007-01-261-7/+16
| | | | | | | scattered relocations. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33555 91177308-0d34-0410-b5e6-96231b3b80d8
* fit in 80 colsChris Lattner2007-01-261-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33553 91177308-0d34-0410-b5e6-96231b3b80d8
* rename filesJim Laskey2007-01-261-25/+27
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33552 91177308-0d34-0410-b5e6-96231b3b80d8
* Change the MachineDebugInfo to MachineModuleInfo to better reflect usageJim Laskey2007-01-266-23/+23
| | | | | | | for debugging and exception handling. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33550 91177308-0d34-0410-b5e6-96231b3b80d8
* Make LABEL a builtin opcode.Jim Laskey2007-01-263-14/+13
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33537 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR761:Reid Spencer2007-01-261-3/+1
| | | | | | | | BCReader no longer has a header that contains the endinanness and pointer size. It's been replaced by datalayout field. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33528 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR761:Reid Spencer2007-01-261-8/+2
| | | | | | | | Remove the setEndiannes and setPointerSize methods. These are now set through the setDataLayout method. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33526 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR645:Reid Spencer2007-01-261-7/+0
| | | | | | | | Remove the Function::renameLocalSymbols function as it is no longer needed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33522 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove dead code.Devang Patel2007-01-261-5/+0
| | | | | | | | CallGraphSCCPass does not need to implement runOnModule(). It supports runOnSCC(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33516 91177308-0d34-0410-b5e6-96231b3b80d8
* Inherit CallGraphSCCPass directly from Pass.Devang Patel2007-01-262-4/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33514 91177308-0d34-0410-b5e6-96231b3b80d8
* Inherit FunctionPass directly from Pass.Devang Patel2007-01-261-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33513 91177308-0d34-0410-b5e6-96231b3b80d8
* Inherit BasicBlockPass directly from Pass.Devang Patel2007-01-252-4/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33511 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove dead code.Devang Patel2007-01-251-7/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33506 91177308-0d34-0410-b5e6-96231b3b80d8
* Added a MRegisterInfo hook that tells PEI the target is responsible forEvan Cheng2007-01-251-0/+6
| | | | | | | rounding the stack frame to a multiple of stack alignment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33504 91177308-0d34-0410-b5e6-96231b3b80d8
* Migrate print routines to asm to be shared by exception handling.Jim Laskey2007-01-251-0/+62
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33498 91177308-0d34-0410-b5e6-96231b3b80d8
* Repair debug frames as a prelude to eh_frames. Switched to using MachineMovesJim Laskey2007-01-243-5/+11
| | | | | | | by value so that clean up is less confusing (these vectors tend to be small.) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33488 91177308-0d34-0410-b5e6-96231b3b80d8
* Use asm printer to emit alignmentJim Laskey2007-01-241-0/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33485 91177308-0d34-0410-b5e6-96231b3b80d8
* Make ivars private and use getters. Have the MachOWriter return "Mach-OBill Wendling2007-01-242-7/+8
| | | | | | | Writer" for the pass name. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33483 91177308-0d34-0410-b5e6-96231b3b80d8
* Renamed getTypeAlignmentShift() to getPreferredTypeAlignmentShift().Evan Cheng2007-01-241-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33482 91177308-0d34-0410-b5e6-96231b3b80d8
* A virtual method to return the TargetMachOWriterInfo object. This returnsBill Wendling2007-01-241-0/+6
| | | | | | | a real value in derived classes, of course. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33477 91177308-0d34-0410-b5e6-96231b3b80d8
* Moved target-specific information to the TargetMachOWriterInfo obj.Bill Wendling2007-01-241-62/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33476 91177308-0d34-0410-b5e6-96231b3b80d8
* New "TargetMachOWriterInfo" class. It holds target-specific informationBill Wendling2007-01-241-0/+103
| | | | | | | that the MachOWriter needs in order to do its writing stuff 'n things. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33475 91177308-0d34-0410-b5e6-96231b3b80d8
* Add CallGraphSCCPass::assignPassManager().Devang Patel2007-01-231-0/+4
| | | | | | | This enables CalLGraphPassManager. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33466 91177308-0d34-0410-b5e6-96231b3b80d8
* Moved disassembler to libSystemAnton Korobeynikov2007-01-231-13/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33461 91177308-0d34-0410-b5e6-96231b3b80d8
* fix typoChris Lattner2007-01-231-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33459 91177308-0d34-0410-b5e6-96231b3b80d8
* make the SmallSet interface more std::set-likeChris Lattner2007-01-231-6/+13
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33458 91177308-0d34-0410-b5e6-96231b3b80d8
* add a trivial SmallSet class, which operates on a similar principle toChris Lattner2007-01-231-0/+76
| | | | | | | SmallVector. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33456 91177308-0d34-0410-b5e6-96231b3b80d8
* hasFP() is now a virtual method of MRegisterInfo.Evan Cheng2007-01-231-0/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33455 91177308-0d34-0410-b5e6-96231b3b80d8
* Update comment.Evan Cheng2007-01-221-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33450 91177308-0d34-0410-b5e6-96231b3b80d8
* default to emiting an uncompressed .bc fileChris Lattner2007-01-212-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33420 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR970:Reid Spencer2007-01-213-34/+7
| | | | | | | | Clean up handling of isFloatingPoint() and dealing with PackedType. Patch by Gordon Henriksen! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33415 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement a getTypeSizeInBits method. This helps in transforms that wantReid Spencer2007-01-201-0/+4
| | | | | | | to ensure the bit size of a type is identical before proceeding. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33413 91177308-0d34-0410-b5e6-96231b3b80d8
* TargetData assumes (and some regression tests depend on it) that the size ofOwen Anderson2007-01-201-1/+2
| | | | | | | an unspecified datatype in the datalayout is capped by the size of a pointer. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33411 91177308-0d34-0410-b5e6-96231b3b80d8
* Teach TargetData to handle 'preferred' alignment for each target, and useChris Lattner2007-01-201-50/+131
| | | | | | | these alignment amounts to align scalars when we can. Patch by Scott Michel! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33409 91177308-0d34-0410-b5e6-96231b3b80d8
* For PR1043:Reid Spencer2007-01-193-20/+20
| | | | | | | | | | | | | | | This is the final patch for this PR. It implements some minor cleanup in the use of IntegerType, to wit: 1. Type::getIntegerTypeMask -> IntegerType::getBitMask 2. Type::Int*Ty changed to IntegerType* from Type* 3. ConstantInt::getType() returns IntegerType* now, not Type* This also fixes PR1120. Patch by Sheng Zhou. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33370 91177308-0d34-0410-b5e6-96231b3b80d8