summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* typosGabor Greif2009-07-031-5/+5
| | | | llvm-svn: 74771
* Fix typo: intepreter->interpreter.Torok Edwin2009-07-031-1/+1
| | | | llvm-svn: 74770
* Fix the build: provide uint8_t.Duncan Sands2009-07-031-0/+2
| | | | llvm-svn: 74769
* For extended loads of type i1 to i8, we will need to at least one byte from ↵Sanjiv Gupta2009-07-032-2/+6
| | | | | | | | memory. The change in the .td file is to mark the side effects of mov insn. llvm-svn: 74768
* Various small changes related to the Condition Register on PowerPC.Tilmann Scheller2009-07-034-47/+68
| | | | | | | | Don't spill to the CR save area when using the SVR4 ABI for now. Don't rely on constants assigned for registers to be in order (they aren't assigned in order). Make sure CR bits are mapped to the corresponding CR field. llvm-svn: 74767
* Refactor ABI code in the PowerPC backend.Tilmann Scheller2009-07-0312-572/+370
| | | | | | | | | | | Make CalculateParameterAndLinkageAreaSize() Darwin-specific. Remove SVR4 specific code from LowerCALL_Darwin() and LowerFORMAL_ARGUMENTS_Darwin(). Rename MachoABI to DarwinABI for consistency. Rename ELF ABI to SVR4 ABI for consistency. Factor out common call return lowering between the Darwin and SVR4 ABI. Factor out common call lowering between the Darwin and SVR4 ABI. llvm-svn: 74766
* Implement the SVR4 ABI for PowerPC.Tilmann Scheller2009-07-039-58/+1109
| | | | | | | | | | | | | | | | | | | | | | | | Implement LowerFORMAL_ARGUMENTS_SVR4(). Implement LowerCALL_SVR4(). Add support for split arguments. Implement by value parameter passing for aggregates. Add support for variable argument lists. Create the spill area for argument registers of variable argument functions no longer at a fixed offset. Make sure callee saved registers are spilled to the correct stack offsets. Change allocation order of non-volatile floating-point registers. Add VRSAVE to the list of callee-saved registers, add CallConvLowering for vararg calls. Add support for variable argument calls with Vector arguments. Add support for VR and VRSAVE save area, improve allocation order for non-volatile vector registers. Stop creating illegal i8 values in LowerVASTART(). Add memory access width hints. Make sure to reserve space on the stack for the frame pointer. When using the SVR4 ABI, reserve r13 for the Small Data Area pointer. Assure that the frame pointer is spilled to the correct location on the stack. Some FP registers were not marked as volatile. Make sure the i64 words from a long double are passed either both in registers or both on the stack. Only put integer arguments in registers which are not marked with the inreg flag. llvm-svn: 74765
* Add NumFixedArgs attribute to CallSDNode which indicates the number of fixed ↵Tilmann Scheller2009-07-0316-31/+43
| | | | | | | | | | | arguments in a vararg call. With the SVR4 ABI on PowerPC, vector arguments for vararg calls are passed differently depending on whether they are a fixed or a variable argument. Variable vector arguments always go into memory, fixed vector arguments are put into vector registers. If there are no free vector registers available, fixed vector arguments are put on the stack. The NumFixedArgs attribute allows to decide for an argument in a vararg call whether it belongs to the fixed or variable portion of the parameter list. llvm-svn: 74764
* Small cleanups in the PowerPC backend.Tilmann Scheller2009-07-034-38/+21
| | | | | | | | | | Small refactoring in LowerFORMAL_ARGUMENTS(). Correct minor formatting issues. Remove size argument of CreateCopyOfByValArgument(). Remove dead argument from CalculateStackSlotSize(). Remove unused variable ReturnAddrIndex from various targets. llvm-svn: 74763
* remove utility methods that are not very useful.Zhongxing Xu2009-07-032-4/+1
| | | | llvm-svn: 74762
* add test case for r74407.Zhongxing Xu2009-07-031-0/+7
| | | | llvm-svn: 74761
* Factor some code out and support for Jump Table relocationsBruno Cardoso Lopes2009-07-034-42/+142
| | | | llvm-svn: 74760
* Add --enable-llvmc-dynamic configure option.Mikhail Glushenkov2009-07-034-10/+52
| | | | | | | Controls whether libCompilerDriver should be loaded dynamically. By default this is needed only on Win32, to make dynamic plugins work. llvm-svn: 74759
* Trailing whitespace.Mikhail Glushenkov2009-07-032-4/+4
| | | | llvm-svn: 74758
* Update checker build.Ted Kremenek2009-07-031-1/+1
| | | | llvm-svn: 74757
* Misc compiler-rt fixes. Clarify neg implementations to show what is Eli Friedman2009-07-036-44/+25
| | | | | | | | | actually happening. Fix mod implementation so it doesn't get optimized to a recursive call. Make x86-32 non-SSE2 shift implementation use shld/shrd instead of emulating it (the only x86 processor where the emulation might be remotely close to justifiable is the Pentium 4). llvm-svn: 74756
* Add thumb2 sign / zero extend with rotate instructions.Evan Cheng2009-07-036-2/+194
| | | | llvm-svn: 74755
* Minor improvement to the LDA debug output.Andreas Bolka2009-07-031-2/+7
| | | | llvm-svn: 74754
* Second batch of passes using LLVMContext.Owen Anderson2009-07-035-37/+46
| | | | llvm-svn: 74753
* Add an intermediate typedef for __builtin_va_tag to make it a bit easier Eli Friedman2009-07-031-1/+2
| | | | | | | to deal with for AST pretty-printing/rewriting. Patch by Abramo Bagnara. llvm-svn: 74752
* Remove unused method.Ted Kremenek2009-07-031-3/+0
| | | | llvm-svn: 74751
* BasicStoreManager: Use SymbolManager::canSymbolicate() to determine if a ↵Ted Kremenek2009-07-031-1/+1
| | | | | | variable can be symbolicated. llvm-svn: 74750
* Add Thumb2 load / store multiple instructions. Not used yet.Evan Cheng2009-07-031-0/+15
| | | | llvm-svn: 74749
* Convert the first batch of passes to use LLVMContext.Owen Anderson2009-07-034-625/+711
| | | | llvm-svn: 74748
* Fix a horrible CFG bug reported in <rdar://problem/7027684>. The wrong successorTed Kremenek2009-07-032-1/+13
| | | | | | | block would get hooked up in some cases when processing empty compound statements. llvm-svn: 74743
* Replace std::iostreams with raw_ostream in TableGen.Daniel Dunbar2009-07-0336-266/+257
| | | | | | | | - Sorry, I can't help myself. - No intended functionality change. llvm-svn: 74742
* t2LDR_PRE etc are loads.Evan Cheng2009-07-031-0/+2
| | | | llvm-svn: 74741
* Added indexed stores.Evan Cheng2009-07-033-1/+84
| | | | llvm-svn: 74740
* Fill in a few more missing accessors.Owen Anderson2009-07-022-2/+10
| | | | llvm-svn: 74739
* Revert prev commit, we have much bigger problems because 2.3 is missingDaniel Dunbar2009-07-021-1/+1
| | | | | | the subprocess module. llvm-svn: 74738
* Avoid @staticmethod to allow use with Python 2.3.Daniel Dunbar2009-07-021-2/+3
| | | | llvm-svn: 74737
* Sign extending pre/post indexed loads.Evan Cheng2009-07-023-3/+42
| | | | llvm-svn: 74736
* switch the .ll parser to use SourceMgr.Chris Lattner2009-07-027-48/+59
| | | | llvm-svn: 74735
* switch the .ll parser into SMDiagnostic.Chris Lattner2009-07-027-105/+26
| | | | llvm-svn: 74734
* Simplify debug info intrisinc lowering.Devang Patel2009-07-025-170/+118
| | | | llvm-svn: 74733
* add an explicit class for holding llvm::SourceMgr diagnostics and useChris Lattner2009-07-022-25/+88
| | | | | | | | | | | | | | | it to print them. This gives us column numbers in the diag line. Before: t.s:4: error: unexpected token in argument list mov %eax %edx ^ now: t.s:4:11: error: unexpected token in argument list mov %eax %edx ^ llvm-svn: 74732
* Checkpoint refactoring of ThumbInstrInfo and ThumbRegisterInfo into ↵David Goodwin2009-07-0213-420/+1655
| | | | | | Thumb1InstrInfo, Thumb2InstrInfo, Thumb1RegisterInfo and Thumb2RegisterInfo. Move methods from ARMInstrInfo to ARMBaseInstrInfo to prepare for sharing with Thumb2. llvm-svn: 74731
* Replace guarded calls in RegionStoreManager toTed Kremenek2009-07-022-23/+14
| | | | | | | | | ValueManager::getRegionValueSymbolVal() with unguarded calls to ValueManager::getRegionValueSymbolValOrUnknown(). This changes centralizes the decision of what values to symbolicate in SymbolManager rather than having it scatter in RegionStoreManager. llvm-svn: 74730
* Enhance RegionStore to lazily symbolicate fields and array elements forTed Kremenek2009-07-023-10/+26
| | | | | | structures passed-by-value as function arguments. llvm-svn: 74729
* implement error recovery in the llvm-mc parser. Feel the power!Chris Lattner2009-07-021-4/+11
| | | | llvm-svn: 74728
* fix broken links.Chris Lattner2009-07-021-3/+3
| | | | llvm-svn: 74727
* test commitChris Lattner2009-07-021-0/+1
| | | | llvm-svn: 74726
* mention the license.Chris Lattner2009-07-021-0/+4
| | | | llvm-svn: 74725
* Make the current LLVMContext available to passes.Owen Anderson2009-07-021-2/+14
| | | | llvm-svn: 74724
* CMake build fixes, from Xerxes RanbyDouglas Gregor2009-07-0210-1/+19
| | | | llvm-svn: 74720
* Fix RUN line so this test doesn't hang.Ted Kremenek2009-07-021-1/+1
| | | | llvm-svn: 74719
* shrinking down #includesBruno Cardoso Lopes2009-07-025-67/+63
| | | | llvm-svn: 74718
* Patch to allocate list of bases in CXXRecordDeclFariborz Jahanian2009-07-023-7/+14
| | | | | | using ASTContxt allocation. llvm-svn: 74717
* StoreManagers: Use 'hasGlobalsStorage()' and 'hasParametersStorage()' instead ofTed Kremenek2009-07-024-7/+27
| | | | | | | directly consulting if a VarDecl is an implicit or actual parameter, a global, etc. llvm-svn: 74716
* Add a separate MemSpaceRegion for function/method arguments passed on the stack.Ted Kremenek2009-07-022-17/+35
| | | | | | | This will simplify the logic of StoreManagers that want to specially reason about the values of parameters. llvm-svn: 74715
OpenPOWER on IntegriCloud