summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* MSVC doesn't do any validation regarding exception specification.Francois Pichet2011-05-243-1/+18
| | | | llvm-svn: 131950
* Link in the MCJIT. Fixes makefile build.Charles Davis2011-05-241-1/+1
| | | | llvm-svn: 131949
* - Teach SelectionDAG::isKnownNeverZero to return true (op x, c) when c isEvan Cheng2011-05-243-12/+45
| | | | | | | | | | non-zero. - Teach X86 cmov optimization to eliminate the cmov from ctlz, cttz extension when the source of X86ISD::BSR / X86ISD::BSF is proven to be non-zero. rdar://9490949 llvm-svn: 131948
* Remove dead option.Evan Cheng2011-05-241-5/+0
| | | | llvm-svn: 131947
* FileCheck-ize a couple of IV unit tests.Andrew Trick2011-05-242-7/+13
| | | | llvm-svn: 131946
* Fix cmake dependencies.Rafael Espindola2011-05-241-1/+1
| | | | llvm-svn: 131943
* Simplify offset calculation of stack frame objects for $gp restore location andAkira Hatanaka2011-05-241-56/+31
| | | | | | | | variable arguments in LowerCall and LowerFormalArguments. This should also fix the bug in which handling of variable arguments is incorrect when the front-end optimizes away unused fixed arguments. llvm-svn: 131942
* Test case for r131940.Devang Patel2011-05-241-0/+54
| | | | llvm-svn: 131941
* Fix debug info for blocks' variable.Devang Patel2011-05-241-6/+21
| | | | llvm-svn: 131940
* Test case for r130799 - indvars: Added canExpandBackEdgeTakenCount.Andrew Trick2011-05-241-1/+5
| | | | llvm-svn: 131939
* Delete the extraneous return statement that was causing my earlierAlexis Hunt2011-05-232-2/+19
| | | | | | | | | | issues and also add a test. We should now handle defaulted members of templates properly. No comment as to whether or not this also holds for templated functions, but defaulting those is kind of insane. llvm-svn: 131938
* Refactor InstructionLLVM::Dump() a little bit to reduce the entropy by ↵Johnny Chen2011-05-231-45/+35
| | | | | | | | | introducing a new file static utility function AddSymbolicInfo() which is called from places within InstructionLLVM::Dump(). llvm-svn: 131937
* Remove unnecessary comment.Devang Patel2011-05-231-1/+0
| | | | llvm-svn: 131936
* Fix bug introduced with r131930.David Chisnall2011-05-231-1/+2
| | | | llvm-svn: 131935
* Don't resolve the path when we extract the path from the dyld info or weGreg Clayton2011-05-231-4/+3
| | | | | | | | | | | | can end up with an invalid path if the path resolves to something different on the local machine. It is very important not to since remote debugging will mention paths that might exist on the current machine (like "/System/Library/Frameworks/CoreFoundation/CoreFoundation" which on the desktop systems is a symlink to "/System/Library/Frameworks/CoreFoundation/Versions/A/CoreFoundation"). We will let the platform plug-ins resolve the paths in a later stage. llvm-svn: 131934
* Implement explicit specialization of explicitly-defaulted constructors.Alexis Hunt2011-05-234-89/+80
| | | | | | | | The general out-of-line case (including explicit instantiation mostly works except that the definition is being lost somewhere between the AST and CodeGen, so the definition is never emitted. llvm-svn: 131933
* Don't omit retain / release / autorelease message sends in hybrid GC mode.David Chisnall2011-05-231-2/+2
| | | | llvm-svn: 131932
* Fix some problems where functions must be bitcast but we're expecting a ↵David Chisnall2011-05-233-17/+20
| | | | | | | | llvm::Function of the right type. PR9994. llvm-svn: 131930
* Expand f64 FPOW.Akira Hatanaka2011-05-231-0/+1
| | | | llvm-svn: 131928
* Add pattern for double-to-integer conversion. Patch by Sasa Stankovic.Akira Hatanaka2011-05-232-0/+9
| | | | llvm-svn: 131927
* Revert 121907 (it causes llc crash) and apply original patch from PR9817.Devang Patel2011-05-232-3/+3
| | | | llvm-svn: 131926
* Fix usage comment.Johnny Chen2011-05-231-1/+1
| | | | llvm-svn: 131925
* Add a Python utility to help convert the Mail.app saved 'Raw Message Source' ↵Johnny Chen2011-05-232-5/+70
| | | | | | .eml file to a git-am friendly file. llvm-svn: 131924
* This commit integrates support for the LLVM MCJITSean Callanan2011-05-2314-187/+729
| | | | | | | | | | | | | | | | | | | | | | | into the mainline LLDB codebase. MCJIT introduces API improvements and better architectural support. This commit adds a new subsystem, the ProcessDataAllocator, which is responsible for performing static data allocations on behalf of the IR transformer. MCJIT currently does not support the relocations required to store the constant pool in the same allocation as the function body, so we allocate a heap region separately and redirect static data references from the expression to that heap region in a new IR modification pass. This patch also fixes bugs in the IR transformations that were exposed by the transition to the MCJIT. Finally, the patch also pulls in a more recent revision of LLVM so that the MCJIT is available for use. llvm-svn: 131923
* Fixes related to coding style.Akira Hatanaka2011-05-231-36/+36
| | | | llvm-svn: 131922
* Document llvm.exp and llvm.pow. Dan Gohman2011-05-231-0/+68
| | | | llvm-svn: 131921
* Correctly propagate defaultedness across template instantiation. ThisAlexis Hunt2011-05-233-2/+29
| | | | | | | | fixes PR9965, but we're not out of the water yet, as we do not successfully handle out-of-line definitions, due to my utter misunderstanding of how we manage templates. llvm-svn: 131920
* When checking for signed multiplication overflow, watch out for INT_MIN and -1.Dan Gohman2011-05-232-0/+20
| | | | | | This fixes PR9845. llvm-svn: 131919
* Propagate error correctly in the MC Asm parser for leading '$' expressions.Jim Grosbach2011-05-231-1/+1
| | | | llvm-svn: 131918
* Fix MipsAsmPrinter::printSavedRegsBitmaskChange. Remove functions and variablesAkira Hatanaka2011-05-232-38/+40
| | | | | | in MipsFunctionInfo that are no longer used. llvm-svn: 131917
* clarify this, apparently it is confusing :)Chris Lattner2011-05-231-1/+3
| | | | llvm-svn: 131916
* Change StackDirection from StackGrowsUp to StackGrowsDown.Akira Hatanaka2011-05-236-252/+94
| | | | | | | | | | | | | | | | The following improvements are accomplished as a result of applying this patch: - Fixed frame objects' offsets (relative to either the virtual frame pointer or the stack pointer) are set before instruction selection is completed. There is no need to wait until Prologue/Epilogue Insertion is run to set them. - Calculation of final offsets of fixed frame objects is straightforward. It is no longer necessary to assign negative offsets to fixed objects for incoming arguments in order to distinguish them from the others. - Since a fixed object has its relative offset set during instruction selection, there is no need to conservatively set its alignment to 4. - It is no longer necessary to reorder non-fixed frame objects in MipsFrameLowering::adjustMipsStackFrame. llvm-svn: 131915
* Calculate the dyld slide from all in memory info without having to use theGreg Clayton2011-05-232-46/+66
| | | | | | lldb module. llvm-svn: 131914
* Add more workarounds for "bl #..." and "blx #..." where the ARMAsmParser ↵Johnny Chen2011-05-231-0/+28
| | | | | | | | fails to parse/recognize the (PC-relative) immediate operand. llvm-svn: 131913
* Fix examples compile break due to rewrite of isa.Manuel Klimek2011-05-231-1/+1
| | | | llvm-svn: 131912
* Fixed an issue in the EmulateInstructionARM there the IT opcode was trying toGreg Clayton2011-05-237-12/+112
| | | | | | | | | | | | | | | | | | | | | | | | parse NOP instructions. I added the new table entries for the NOP for the plain NOP, Yield, WFE, WFI, and SEV variants. Modified the opcode emulation function EmulateInstructionARM::EmulateMOVRdSP(...) to notify us when it is creating a frame. Also added an abtract way to detect the frame pointer register for both the standard ARM ABI and for Darwin. Fixed GDBRemoteRegisterContext::WriteAllRegisterValues(...) to correctly be able to individually write register values back if case the 'G' packet is not implemented or returns an error. Modified the StopInfoMachException to "trace" stop reasons. On ARM we currently use the BVR/BCR register pairs to say "stop when the PC is not equal to the current PC value", and this results in a EXC_BREAKPOINT mach exception that has 0x102 in the code. Modified debugserver to create the short option string from long option definitions to make sure it doesn't get out of date. The short option string was missing many of the newer short option values due to a modification of the long options defs, and not modifying the short option string. llvm-svn: 131911
* Fix the Align() utility which tries to align the raw disassembly with the ↵Johnny Chen2011-05-231-4/+10
| | | | | | | | | | | edis'ed disassembly so that both the opcode and the operands are aligned with the rest of output. Comment out the code related to force_raw mode when disassembling arm or thumb for now. It testing goes ok, we will remove the section of code related to force_raw. llvm-svn: 131910
* Test case for r131908.Devang Patel2011-05-231-0/+102
| | | | llvm-svn: 131909
* Preserve debug info during iSel by keeping DanglingDebugInfoMap live until ↵Devang Patel2011-05-233-1/+19
| | | | | | | | end of function. Patch by Micah Villmow llvm-svn: 131908
* While replacing all uses of a SDValue with another value, do not forget to ↵Devang Patel2011-05-232-0/+51
| | | | | | transfer SDDbgValue. llvm-svn: 131907
* Clear list of instructions without DebugLoc.Devang Patel2011-05-231-0/+1
| | | | llvm-svn: 131906
* The dragonegg option to disable LLVM optimizations changed.Duncan Sands2011-05-232-2/+2
| | | | llvm-svn: 131903
* Implement .seh_stackalloc and .seh_pushframe parsing.Charles Davis2011-05-231-4/+27
| | | | | | | | | I haven't implemented any of the ones that take registers yet. The problem is that for x86-64 the streamer methods expect a native x86 register number (note: %r8-%r15 want 8-15 instead of 0-7; same for %xmm8-%xmm15). I haven't figured out exactly how I want to do that yet. llvm-svn: 131899
* CodeGeneration: Use FIXME instead of XXXTobias Grosser2011-05-231-3/+3
| | | | | | Cleanup suggested by ether. llvm-svn: 131898
* fix a really nasty basicaa mod/ref calculation bug that was causing ↵Chris Lattner2011-05-232-2/+22
| | | | | | | | miscompilation of UnitTests/ObjC/messages-2.m with the recent optimizer improvements. llvm-svn: 131897
* Emulate a MSVC bug where if during an using declaration name lookup, the ↵Francois Pichet2011-05-235-4/+88
| | | | | | | | | | | | | | | declaration found is unaccessible (private) and that declaration was bring into scope via another using declaration whose target declaration is accessible (public) then no error is generated. Example: class A { public: int f(); }; class B : public A { private: using A::f; }; class C : public B { private: using B::f; }; Here, B::f is private so this should fail in Standard C++, but because B::f refers to A::f which is public MSVC accepts it. This fixes 1 error when parsing MFC code with clang. llvm-svn: 131896
* Fix <rdar://problem/9476260> by having tail calls always generate 32-bit ↵Cameron Zwarich2011-05-232-6/+11
| | | | | | | | branches in Darwin Thumb2 code. Tail calls are already disabled on Thumb1. llvm-svn: 131894
* rearrange two transforms, since one subsumes the other. Make the ↵Chris Lattner2011-05-231-16/+23
| | | | | | | | shift-exactness xform recurse. llvm-svn: 131888
* Transform any logical shift of a power of two into an exact/NUW shift whenChris Lattner2011-05-232-0/+38
| | | | | | in a known-non-zero context. llvm-svn: 131887
* Use a more efficient data structure for the "operand map". The number ofBill Wendling2011-05-231-7/+28
| | | | | | | operands to an instruction aren't great, so an iterative search is fairly quick and doesn't have the overhead of std::map. llvm-svn: 131886
OpenPOWER on IntegriCloud