summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Fix warning due to unused private member variable.Zachary Turner2015-02-111-4/+3
| | | | llvm-svn: 228774
* Fix some warnings due to -Wcovered-switch-default.Zachary Turner2015-02-112-8/+0
| | | | llvm-svn: 228773
* [UBSan] Add report deduplication for -fsanitize=function.Alexey Samsonov2015-02-112-11/+25
| | | | | | | | | | | | | | | | | | Summary: Make sure we don't print the error report from -fsanitize=function twice for the same source location, as we do in another UBSan handlers. Test Plan: check-ubsan test suite Reviewers: rsmith, pcc Reviewed By: pcc Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D7524 llvm-svn: 228772
* Fixed a crasher that could happen if:Greg Clayton2015-02-111-1/+1
| | | | | | | | | | | | - you have a type that contains a typedef to a VectorType or an ExtVectorType - that type is returned from an ARM function that LLDB steps over so we try to figure out the return type - we try to determine if the type is a homogeneous aggregate type and we crash We get not using getAs() when we should have been and using llvm::cast caused an assertion crash when the typedef type didn't return a valid VectorType or ExtVectorType. <rdar://problem/19646550> llvm-svn: 228771
* Added CoreMedia.cpp to CMakeLists.txt for egranata.Chaoren Lin2015-02-111-0/+1
| | | | llvm-svn: 228770
* Emit landing pads for SEH even if nounwind is presentReid Kleckner2015-02-114-4/+9
| | | | | | | Disabling exceptions applies nounwind to lots of functions. SEH catches asynch exceptions, so emit the landing pad anyway. llvm-svn: 228769
* Convert std::make_unique<> to llvm::make_unique<>.Zachary Turner2015-02-103-13/+14
| | | | llvm-svn: 228768
* [mips] Add __clear_cache() definition for non-Android systemsPetar Jovanovic2015-02-101-4/+4
| | | | | | | | | Make sure clear_cache() builtin has an appropriate definition for Linux. Call syscall(NR_cacheflush, ...). Differential Revision: http://reviews.llvm.org/D7205 llvm-svn: 228767
* Add the missing testcase for r228764.Adrian Prantl2015-02-101-0/+257
| | | | llvm-svn: 228766
* Fix makeLibCall argument (signed) in SoftenFloatRes_XINT_TO_FP functionPetar Jovanovic2015-02-102-1/+16
| | | | | | | | | | | | | | The isSigned argument of makeLibCall function was hard-coded to false (unsigned). This caused zero extension on MIPS64 soft float. As the result SingleSource/Benchmarks/Stanford/FloatMM test and SingleSource/UnitTests/2005-07-17-INT-To-FP test failed. The solution was to use the proper argument. Patch by Strahinja Petrovic. Differential Revision: http://reviews.llvm.org/D7292 llvm-svn: 228765
* Debug Info: Support variables that are described by more than one MMIAdrian Prantl2015-02-105-35/+68
| | | | | | | | | | table entry. This happens when SROA splits up an alloca and the resulting allocas cannot be lowered to SSA values because their address is passed to a function. Fixes PR22502. llvm-svn: 228764
* Fix indentation.Adrian Prantl2015-02-101-1/+1
| | | | llvm-svn: 228763
* Fix a couple typos in the previous commitEnrico Granata2015-02-102-1/+2
| | | | llvm-svn: 228762
* EarlyCSE: Add check lines for test added in r228760David Majnemer2015-02-101-0/+3
| | | | llvm-svn: 228761
* EarlyCSE: It isn't safe to CSE across synchronization boundariesDavid Majnemer2015-02-102-1/+10
| | | | | | This fixes PR22514. llvm-svn: 228760
* Add an LLDB summary for CMTime. Fixes rdar://15370376Enrico Granata2015-02-105-0/+115
| | | | llvm-svn: 228759
* Add missing function and header include.Zachary Turner2015-02-101-0/+5
| | | | llvm-svn: 228758
* Extract attach core logic from SBTarget::Attach* methods into unified ↵Oleksiy Vyalov2015-02-104-250/+169
| | | | | | | | SBTarget::AttachToProcess and make it work with platform for remote attach purposes. http://reviews.llvm.org/D7471 llvm-svn: 228757
* Oops. Don't call Windows functions on non-windows.Zachary Turner2015-02-101-0/+8
| | | | llvm-svn: 228756
* Rewrite llvm-pdbdump in terms of LLVMDebugInfoPDB.Zachary Turner2015-02-1090-2336/+1044
| | | | | | | | | | | | | This makes llvm-pdbdump available on all platforms, although it will currently fail to create a dumper if there is no PDB reader implementation for the current platform. It implements dumping of compilands and children, which is less information than was previously available, but it has to be rewritten from scratch using the new set of interfaces, so the rest of the functionality will be added back in subsequent commits. llvm-svn: 228755
* X86: @llvm.frameaddress should defer to SelectionDAG for Win CFIDavid Majnemer2015-02-102-2/+20
| | | | llvm-svn: 228754
* GNU: Rename parseZOption because it actually parses only -z max-page-size.Rui Ueyama2015-02-101-3/+3
| | | | llvm-svn: 228753
* Fix build due to mismatched function signatures.Zachary Turner2015-02-101-2/+5
| | | | llvm-svn: 228752
* [Object] Reformat the code with clang-formatSimon Atanasyan2015-02-101-6/+5
| | | | | | No functional changes. llvm-svn: 228751
* Unittest: Do s/_context/_ctx/g.Rui Ueyama2015-02-104-210/+210
| | | | llvm-svn: 228750
* GNU: Add --no-export-dynamic command line option.Rui Ueyama2015-02-103-2/+17
| | | | llvm-svn: 228749
* X86: Make @llvm.frameaddress work correctly with Windows unwind codesDavid Majnemer2015-02-104-6/+39
| | | | | | | | | Simply loading or storing the frame pointer is not sufficient for Windows targets. Instead, create a synthetic frame object that we will lower later. References to this synthetic object will be replaced with the correct reference to the frame address. llvm-svn: 228748
* Provide DIA implementation of DebugInfoPDB.Zachary Turner2015-02-1027-18/+1874
| | | | | | | | | | | | | | | | | This implements DebugInfoPDB when the DIA SDK is present on the system. Specifically, this means that the following conditions are met: 1) You are building on Windows. 2) You are building with MSVC. 3) Visual Studio did not corrupt the installation of DIA due to a known issue with side-by-side installations of VS2012 and VS2013. If all of these conditions are true, you will be able to pass a value of PDB_Reader::DIA to PDB::createPdbReader(). There are no tests for this yet, as any test will be in the form of a lit test which tests the llvm-pdbdump.exe, which still needs to be rewritten in terms of this library. llvm-svn: 228747
* Reformat (and remove some tabs) to make debugging this code aEric Christopher2015-02-101-4/+7
| | | | | | little easier to step through. llvm-svn: 228746
* Now use the __debugbreak intrinsic instead of calling RaiseException; it ↵Aaron Ballman2015-02-101-13/+6
| | | | | | requires no forward declares and still calls VEH. llvm-svn: 228745
* Fix 'process launch -i' for remote processesVince Harron2015-02-104-31/+50
| | | | | | | | | | | | | | | | | | We want to forward stdin when stdio is not disabled and when we're not redirecting stdin from a file. renamed m_stdio_disable to m_stdin_forward and inverted value because that's what we want to remember. There was previously a bug that if you redirected stdin from a file, stdout and stderr would also be redirected to /dev/null Adds support for remote target to TestProcessIO.py Fixes ProcessIOTestCase.test_stdin_redirection_with_dwarf for remote Linux targets llvm-svn: 228744
* Driver: move non-positional parameters out of switch. NFC.Rui Ueyama2015-02-101-198/+172
| | | | llvm-svn: 228743
* Fix overly prescriptive test that broken on Mac after r228725.Daniel Jasper2015-02-101-8/+8
| | | | llvm-svn: 228742
* fix docs typoNico Weber2015-02-101-1/+1
| | | | llvm-svn: 228741
* Fix ASan's Noinst unit testsKuba Brecka2015-02-105-1/+21
| | | | | | | | We currently skip all "Noinst" unit tests on OS X, which was probably caused when we removed the "allow_reexec" flag. The MaybeReexec function fails to re-execute when the runtime is linked statically, because there is no dylib to use. This patch adds an explicit DisableReexec function that is used from asan_noinst_test.cc and the runtime then doesn't try to re-execute. Reviewed at http://reviews.llvm.org/D7493 llvm-svn: 228740
* [PowerPC] Remove the --no-tls-optimize workaround from the clang driverBill Schmidt2015-02-102-9/+0
| | | | llvm-svn: 228739
* Changing the status code generated by LLVM_BUILTIN_TRAP on Windows to be ↵Aaron Ballman2015-02-101-1/+1
| | | | | | something categorized as a valid error code. Fixes crashing uses (such as not --crash) with existing sys::Wait behavior. llvm-svn: 228738
* [analyzer] Pass actual state to alloc/dealloc handling functions.Anton Yartsev2015-02-101-43/+78
| | | | | | The state obtained from CheckerContext::getState() may be outdated by the time the alloc/dealloc handling function is called (e.g. the state was modified but the transition was not performed). State argument was added to all alloc/dealloc handling functions in order to get the latest state and to allow sequential calls to those functions. llvm-svn: 228737
* Fixed memory corruption problem.Andrey Churbanov2015-02-101-0/+4
| | | | llvm-svn: 228736
* Check for backtraces in tests which are verifying pretty stack traces from a ↵Pete Cooper2015-02-104-2/+8
| | | | | | | | | | crashing clang. PrettyStackTrace now requires the ENABLE_BACKTRACES option. We need to check for that here or these tests fail llvm-lit. Reviewed by chandlerc llvm-svn: 228735
* Updated the kmp_omp_struct_info_t structure used by debuggers.Andrey Churbanov2015-02-101-27/+48
| | | | llvm-svn: 228734
* Adding support for llvm.eh.begincatch and llvm.eh.endcatch intrinsics and ↵Andrew Kaylor2015-02-106-0/+757
| | | | | | | | beginning the documentation of native Windows exception handling. Differential Revision: http://reviews.llvm.org/D7398 llvm-svn: 228733
* [UBSan] Reduce the number of getCallerLocation() calls.Alexey Samsonov2015-02-103-15/+14
| | | | | | | | | | | | | | | | | | getCallerLocation() is expensive as it issues a call to symbolizer. (In fact, this function has a memory leak at the moment, but this will be fixed in the nearest future). We should only call it if we're actually going to print an error report, in particular, once for every reported source location. __ubsan_handle_type_mismatch: call getCallerLocation() only if provided source location is invalid, and only if the report is not deduplicated. __ubsan_handle_float_cast_overflow: call getSourceLocation with correct CallerPC (the one in user code, not in UBSan handler). Source location for this check is not currently emitted by frontend. llvm-svn: 228732
* DeadArgElim: arguments affect all returned sub-values by default.Tim Northover2015-02-102-4/+33
| | | | | | | | | | Unless we meet an insertvalue on a path from some value to a return, that value will be live if *any* of the return's components are live, so all of those components must be added to the MaybeLiveUses. Previously we were deleting arguments if sub-value 0 turned out to be dead. llvm-svn: 228731
* OpenMP 4.0 standard function omp_is_initial_device() implemented.Andrey Churbanov2015-02-107-0/+55
| | | | llvm-svn: 228730
* Don't crash when evaluating a DWARF expression has a DW_OP_bra with nothing ↵Greg Clayton2015-02-101-0/+7
| | | | | | | | on the value stack. <rdar://problem/18919125> llvm-svn: 228729
* Fix up r228725, missed change in PPCSubtarget definitionBill Schmidt2015-02-101-6/+6
| | | | llvm-svn: 228728
* Added comment on format of local labels in asm codeAndrey Churbanov2015-02-101-0/+2
| | | | llvm-svn: 228727
* IR: Add MDNode::replaceWithPermanent()Duncan P. N. Exon Smith2015-02-103-0/+67
| | | | | | | | | | | | | | | | Add new API for converting temporaries that may self-reference. Self-referencing nodes are not allowed to be uniqued, so sending them into `replaceWithUniqued()` is dangerous (and this commit adds assertions that prevent it). `replaceWithPermanent()` has similar semantics to `get()` followed by calls to `replaceOperandWith()`. In particular, if there's a self-reference, it returns a distinct node; otherwise, it returns a uniqued one. Like `replaceWithUniqued()` and `replaceWithDistinct()` (well, it calls out to them) it mutates the temporary node in place if possible, only calling `replaceAllUsesWith()` on a uniquing collision. llvm-svn: 228726
* [PowerPC] Fix reverted patch r227976 to avoid register assignment issuesBill Schmidt2015-02-1014-120/+434
| | | | | | | | | | | | | | | | | | | See full discussion in http://reviews.llvm.org/D7491. We now hide the add-immediate and call instructions together in a separate pseudo-op, which is tagged to define GPR3 and clobber the call-killed registers. The PPCTLSDynamicCall pass prior to RA now expands this op into the two separate addi and call ops, with explicit definitions of GPR3 on both instructions, and explicit clobbers on the call instruction. The pass is now marked as requiring and preserving the LiveIntervals and SlotIndexes analyses, and fixes these up after the replacement sequences are introduced. Self-hosting has been verified on LE P8 and BE P7 with various optimization levels, etc. It has also been verified with the --no-tls-optimize flag workaround removed. llvm-svn: 228725
OpenPOWER on IntegriCloud