summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix SDK selection using "platform select" when --sysroot/--version/--build ↵Ilia K2015-03-122-1/+44
| | | | | | | | | | | | | | | | | | | | | | | | | options were specified Summary: This patch fixes SDK selection in the following case: ``` platform select remote-ios --sysroot "/Users/IliaK/Library/Developer/Xcode/iOS DeviceSupport/8.1.2 (12B440)" --build 12B440 --version 8.1.2 target create --arch arm64 "~/Project1.app" ``` Currently the lldb selects a first SDK version (in name order) in directory and then updates it after the device is connected. This approach ignores user's arguments and actually "platform select" command doesn't make sense. After this patch, lldb takes a SDK which matches to user's arguments. Reviewers: jasonmolenda, clayborg Reviewed By: clayborg Subscribers: lldb-commits, clayborg, jasonmolenda, aemerson Differential Revision: http://reviews.llvm.org/D8249 llvm-svn: 232017
* Skip AsanTestCase and AsanTestReportDataCase on DarwinIlia K2015-03-123-8/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: This patch skips tests which cause the following error: ``` 1: test_with_dsym (TestMemoryHistory.AsanTestCase) ... os command: make clean ; make MAKE_DSYM=YES ARCH=x86_64 CC="/Users/IliaK/p/llvm/build_ninja/bin/clang" with pid: 9475 stdout: rm -f "a.out" main.o main.d main.d.tmp rm -f -r "a.out.dSYM" /Users/IliaK/p/llvm/build_ninja/bin/clang -fsanitize=address -fsanitize-address-field-padding=1 -g -arch x86_64 -I/Users/IliaK/p/llvm/tools/lldb/test/make/../../include -c -o main.o main.c /Users/IliaK/p/llvm/build_ninja/bin/clang main.o -fsanitize=address -fsanitize-address-field-padding=1 -g -arch x86_64 -I/Users/IliaK/p/llvm/tools/lldb/test/make/../../include -o "a.out" stderr: clang: error: unknown argument: '-fsanitize-address-field-padding=1' clang: error: unsupported argument 'address' to option 'fsanitize=' ld: file not found: /Users/IliaK/p/llvm/build_ninja/bin/../lib/clang/3.7.0/lib/darwin/libclang_rt.asan_osx_dynamic.dylib clang-3.7: error: linker command failed with exit code 1 (use -v to see invocation) make: *** [a.out] Error 1 retcode: 2 ERROR os command: make clean with pid: 9521 stdout: rm -f "a.out" main.o main.d main.d.tmp rm -f -r "a.out.dSYM" stderr: retcode: 0 Restore dir to: /Users/IliaK/p/llvm/tools/lldb ====================================================================== ERROR: test_with_dsym (TestMemoryHistory.AsanTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "/Users/IliaK/p/llvm/tools/lldb/test/lldbtest.py", line 612, in wrapper func(*args, **kwargs) File "/Users/IliaK/p/llvm/tools/lldb/test/lldbtest.py", line 456, in wrapper return func(self, *args, **kwargs) File "/Users/IliaK/p/llvm/tools/lldb/test/functionalities/asan/TestMemoryHistory.py", line 24, in test_with_dsym self.buildDsym (None, compiler) File "/Users/IliaK/p/llvm/tools/lldb/test/lldbtest.py", line 1496, in buildDsym if not module.buildDsym(self, architecture, compiler, dictionary, clean): File "/Users/IliaK/p/llvm/tools/lldb/test/plugins/builder_darwin.py", line 16, in buildDsym lldbtest.system(commands, sender=sender) File "/Users/IliaK/p/llvm/tools/lldb/test/lldbtest.py", line 370, in system raise CalledProcessError(retcode, cmd) CalledProcessError: Command 'make clean ; make MAKE_DSYM=YES ARCH=x86_64 CC="/Users/IliaK/p/llvm/build_ninja/bin/clang" ' returned non-zero exit status 2 Config=x86_64-clang ---------------------------------------------------------------------- ``` Also this patch fixes findBuiltClang() by looking a clang in the build folder. BTW, another patch was made in October 2014, but it wasn't committed: http://reviews.llvm.org/D6272. Reviewers: abidh, zturner, emaste, jingham, jasonmolenda, granata.enrico, DougSnyder, clayborg Reviewed By: clayborg Subscribers: lldb-commits, DougSnyder, granata.enrico, jasonmolenda, jingham, emaste, zturner, abidh, clayborg Differential Revision: http://reviews.llvm.org/D7958 llvm-svn: 232016
* Avoid an unused variable warning when assertions are offJustin Bogner2015-03-121-0/+1
| | | | | | Patch by Mike Edwards. Thanks! llvm-svn: 232015
* Remove some unnecessary forward declarations and put a couple moreEric Christopher2015-03-128-24/+3
| | | | | | where they're supposed to reside. llvm-svn: 232014
* Remove the need to cache the subtarget in the Sparc TargetRegisterInfoEric Christopher2015-03-124-12/+11
| | | | | | classes. llvm-svn: 232013
* Remove the need to cache the subtarget in the Mips TargetRegisterInfoEric Christopher2015-03-1210-26/+26
| | | | | | classes. llvm-svn: 232012
* Reapply 'Run LICM pass after loop unrolling pass.'Kevin Qin2015-03-122-1/+55
| | | | | | | | | It's firstly committed at r231630, and reverted at r231635. Function pass InstructionSimplifier is inserted as barrier to make sure loop unroll pass won't affect on LICM pass. llvm-svn: 232011
* Remove the need to cache the subtarget in the ARM TargetRegisterInfoEric Christopher2015-03-1211-44/+39
| | | | | | | classes. Replace the frame pointer initialization with a static function that'll look it up via the subtarget on the MachineFunction. llvm-svn: 232010
* docs: Fix a typo in my previous commitJustin Bogner2015-03-121-1/+1
| | | | llvm-svn: 232009
* Fix PATH_MAX definition after remarks in r231917 (MI)Ilia K2015-03-123-4/+3
| | | | llvm-svn: 232008
* docs: Document the llvm-cov show and report commandsJustin Bogner2015-03-121-21/+191
| | | | | | | Add a basic synopsis of how to work with instrprof based coverage using the llvm-cov tools. llvm-svn: 232007
* Remove the need to cache the subtarget in the AArch64 TargetRegisterInfoEric Christopher2015-03-124-21/+26
| | | | | | | classes. Replace it with a cache to the Triple and use that where applicable at the moment. llvm-svn: 232005
* [NVPTXAsmPrinter] do not print .align on function headersJingyue Wu2015-03-125-1/+17
| | | | | | | | | | | | | | | | | | | Summary: PTX does not allow .align directives on function headers. Fixes PR21551. Test Plan: test/Codegen/NVPTX/function-align.ll Reviewers: eliben, jholewinski Reviewed By: eliben, jholewinski Subscribers: llvm-commits, eliben, jpienaar, jholewinski Differential Revision: http://reviews.llvm.org/D8274 llvm-svn: 232004
* Make llvm.eh.actions an intrinsic and add docs for itReid Kleckner2015-03-123-5/+47
| | | | | | | | These docs *don't* match the way WinEHPrepare uses them yet, and verifier support isn't implemented either. The implementation will come after the documentation text is reviewed and agreed upon. llvm-svn: 232003
* Remove the need to cache the subtarget in the PowerPC TargetRegisterInfoEric Christopher2015-03-123-55/+68
| | | | | | | classes. Replace it with a cache to the TargetMachine and use that where applicable at the moment. llvm-svn: 232002
* docs: Try to fix a couple of internal links in the llvm-profdata manualJustin Bogner2015-03-121-4/+4
| | | | | | | These links seem broken on llvm.org/docs. Change them to use the sphinx-recommended style to see if that helps. llvm-svn: 232001
* Remove some CHECK-NOT lines in favor of CHECK-NEXTReid Kleckner2015-03-127-61/+32
| | | | | | NFC, this is just shorter. llvm-svn: 232000
* Update copyright year to 2015.Tanya Lattner2015-03-121-1/+1
| | | | llvm-svn: 231999
* Update for a new year.Eric Christopher2015-03-123-6/+6
| | | | | | Patch by Tanya Lattner. llvm-svn: 231998
* Driver: Keep -isysroot flags in crash scripts if we're dumping a VFSJustin Bogner2015-03-122-5/+9
| | | | | | | | | | | | | For crashes with a VFS (ie, with modules), the -isysroot flag is often necessary to reproduce the crash. This is especially true if some modules need to be rebuilt, since without the sysroot they'll try to read headers that are outside of the VFS. I find it likely that we should keep some of the other -i flags in this case as well, but I haven't seen that come up in practice yet so it seems better to be conservative. llvm-svn: 231997
* Fix build break introduced in r231992Krzysztof Parzyszek2015-03-121-4/+2
| | | | llvm-svn: 231996
* Stop calling DwarfEHPrepare from WinEHPrepareReid Kleckner2015-03-126-54/+50
| | | | | | | | Instead, run both EH preparation passes, and have them both ignore functions with unrecognized EH personalities. Pass delegation involved some hacky code for creating an AnalysisResolver that we don't need now. llvm-svn: 231995
* docs: Document byte arrays.Peter Collingbourne2015-03-121-16/+26
| | | | llvm-svn: 231994
* Eliminate constant-extender profitability checks from Hexagon iselKrzysztof Parzyszek2015-03-127-515/+225
| | | | llvm-svn: 231992
* Remove "virtual" and add "override" to all virtual functions.Greg Clayton2015-03-121-22/+22
| | | | llvm-svn: 231991
* Remove "virtual" and add "override" to all functions that are overridden to ↵Greg Clayton2015-03-121-42/+42
| | | | | | quiet warnings. llvm-svn: 231990
* Driver: Print the clang version and original command in crash scriptsJustin Bogner2015-03-123-2/+9
| | | | | | | | | | When a crash report script doesn't work for a reproduction on your machine for one reason or another, it can be really tricky to figure out why not. The compiler version that crashed and the original command line before stripping flags are very helpful when this comes up. llvm-svn: 231989
* Fix FileCheck: substr() expect the length of the string as 2nd argMehdi Amini2015-03-121-2/+1
| | | | | | | | The code assumed that substr() was taking start,end while it takes start,length. From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 231988
* Move the DataLayout to the generic TargetMachine, making it mandatory.Mehdi Amini2015-03-1230-105/+93
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: I don't know why every singled backend had to redeclare its own DataLayout. There was a virtual getDataLayout() on the common base TargetMachine, the default implementation returned nullptr. It was not clear from this that we could assume at call site that a DataLayout will be available with each Target. Now getDataLayout() is no longer virtual and return a pointer to the DataLayout member of the common base TargetMachine. I plan to turn it into a reference in a future patch. The only backend that didn't have a DataLayout previsouly was the CPPBackend. It now initializes the default DataLayout. This commit is NFC for all the other backends. Test Plan: clang+llvm ninja check-all Reviewers: echristo Subscribers: jfb, jholewinski, llvm-commits Differential Revision: http://reviews.llvm.org/D8243 From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 231987
* Under duress, move check for target support of __builtin_setjmp/Joerg Sonnenberger2015-03-119-50/+44
| | | | | | __builtin_longjmp to Sema as requested by John McCall. llvm-svn: 231986
* Fix some clang warnings in WinEHPrepareReid Kleckner2015-03-111-3/+2
| | | | llvm-svn: 231985
* Handle big index in getelementptr instructionReid Kleckner2015-03-113-21/+92
| | | | | | | | | | | | | | | CodeGen incorrectly ignores (assert from APInt) constant index bigger than 2^64 in getelementptr instruction. This is a test and fix for that. Patch by Paweł Bylica! Reviewed By: rnk Subscribers: majnemer, rnk, mcrosier, resistor, llvm-commits Differential Revision: http://reviews.llvm.org/D8219 llvm-svn: 231984
* Add deprecation notice for -f(no-)sanitize-recover flags.Alexey Samsonov2015-03-113-4/+16
| | | | | | | These flags should be replaced with corresponding -f(no-)sanitize-recover=<list> flags. llvm-svn: 231983
* [PowerPC] Remove canFoldAsLoad from instruction definitionsHal Finkel2015-03-115-8/+8
| | | | | | | | | | | | | | | | | The PowerPC backend had a number of loads that were marked as canFoldAsLoad (and I'm partially at fault here for copying around the relevant line of TableGen definitions without really looking at what it meant). This is not right; PPC (non-memory) instructions don't support direct memory operands, and so there is nothing a 'foldable' instruction could be folded into. Noticed by inspection, no test case. The one thing we might lose by doing this is ability to fold some loads into stackmap/patchpoint pseudo-instructions. However, this was untested, and would not obviously have worked for extending loads, and I'd rather re-add support for that once it can be tested. llvm-svn: 231982
* Extended support for native Windows C++ EH outliningAndrew Kaylor2015-03-1110-310/+1479
| | | | | | Differential Review: http://reviews.llvm.org/D7886 llvm-svn: 231981
* Remove useMachineScheduler and replace it with subtarget optionsEric Christopher2015-03-119-69/+46
| | | | | | | | | | | | | that control, individually, all of the disparate things it was controlling. At the same time move a FIXME in the Hexagon port to a new subtarget function that will enable a user of the machine scheduler to avoid using the source scheduler for pre-RA-scheduling. The FIXME would have this removed, but involves either testcase changes or adding -pre-RA-sched=source to a few testcases. llvm-svn: 231980
* Have getCallPreservedMask and getThisCallPreservedMask take aEric Christopher2015-03-1128-53/+78
| | | | | | | MachineFunction argument so that we can grab subtarget specific features off of it. llvm-svn: 231979
* [analyzer] www: +progress for undefbehavior.ZeroAllocDereference Anton Yartsev2015-03-111-1/+1
| | | | llvm-svn: 231978
* One more getCalleeSavedRegs prototype with nullptr.Eric Christopher2015-03-111-2/+1
| | | | llvm-svn: 231977
* Don't rely on the elf test suites inputs when testing the driver. WeChandler Carruth2015-03-111-2/+2
| | | | | | already have a perfectly cromulent test archive in the driver inputs. llvm-svn: 231976
* Be nicer to C90 environments and avoid the declaration of variables in forJoerg Sonnenberger2015-03-111-2/+3
| | | | | | | | header. From Alexander Esilevich. llvm-svn: 231975
* Add the option, -info-plist to llvm-objdump used with -macho to print theKevin Enderby2015-03-114-0/+38
| | | | | | Mach-O info plist section as strings. llvm-svn: 231974
* Move the 'linker-script-test' binary to the tools directory.Chandler Carruth2015-03-119-21/+3
| | | | | | | | | | | | | | | The canonical LLVM directory arrangement places binaries in the 'utils/' tree when they are used as part of building the project. For example, the tblgen binaries are built out of 'utils/' trees. Tools which are not used by any other part of the build, including testing utilities, are just in the 'tools' directory. For example, in Clang we have 'c-index-test' which is exactly the same kind of thing as 'linker-script-test'. Differential Revision: http://reviews.llvm.org/D8269 llvm-svn: 231973
* Always include stddef.h to make sure size_t exists.Joerg Sonnenberger2015-03-111-0/+1
| | | | | | From Alexander Esilevich. llvm-svn: 231972
* Don't overconstrain a FileCheck patternDavid Majnemer2015-03-111-1/+1
| | | | llvm-svn: 231971
* Have getCalleeSavedRegs take a non-null MachineFunction all theEric Christopher2015-03-1117-29/+20
| | | | | | | | time. The target independent code was passing in one all the time and targets weren't checking validity before using. Update a few calls to pass in a MachineFunction where necessary. llvm-svn: 231970
* Constify AArch64CollectLOH.cpp. NFCPete Cooper2015-03-111-7/+7
| | | | llvm-svn: 231969
* Fix a comparison function to actually be a SWO so that it conforms toChandler Carruth2015-03-113-29/+32
| | | | | | | | | | | | | | | | | | | | | | | | the spec required by std::sort and friends. Ordering things this way also dramatically simplifies the code as short-circuit ensures we can skip all of the negative tests. I've left one FIXME where we're establishing a fairly arbitrary ordering. Previously, the function compared all types as equal except for the ones it explicitly handled, but it didn't delegate correctly to the atomflags when doing so, and so it would fail to be a SWO. The two possible fixes are to stop comparing the atom flags entirely, or to establish some arbitrary ordering of the types. Since it was pure luck which ordering of unequal types we ended up with previously (the caller was std::sort, not std::stable_sort) I chose to make the ordering explicit and guaranteed. This seems like the best conservative approach as I suspect we would want to switch to stable_sort otherwise in order to have deterministic output. Differential Revision: http://reviews.llvm.org/D8266 llvm-svn: 231968
* Revert "[dsymutil] Gather function ranges during DIE selection."Frederic Riss2015-03-111-47/+4
| | | | | | | | | | | | This reverts commit r231957. IntervalMap currently doesn't support keys more aligned than host pointers and I've been using it with uint64_t keys. This asserts on some 32bits systems. Revert while I work on an IntervalMap generalization. llvm-svn: 231967
* Initialize ProcessGDBRemoteLog for LLGS to fix remote platform loggingRobert Flack2015-03-1111-72/+60
| | | | | | | | This was previously initialized by ProcessGDBRemote::Initialize but lldb-server does not contain ProcessGDBRemote anymore so this needs to be initialized directly. Differential Revision: http://reviews.llvm.org/D8186 llvm-svn: 231966
OpenPOWER on IntegriCloud