summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Print vectorization analysis when loop hint is specified.Tyler Nowicki2015-08-112-15/+42
| | | | | | This patche and a related llvm patch solve the problem of having to explicitly enable analysis when specifying a loop hint pragma to get the diagnostics. Passing AlwasyPrint as the pass name (see below) causes the front-end to print the diagnostic if the user has specified '-Rpass-analysis' without an '=<target-pass>’. Users of loop hints can pass that compiler option without having to specify the pass and they will get diagnostics for only those loops with loop hints. llvm-svn: 244556
* Print vectorization analysis when loop hint is specified.Tyler Nowicki2015-08-116-21/+44
| | | | | | This patch and a relatec clang patch solve the problem of having to explicitly enable analysis when specifying a loop hint pragma to get the diagnostics. Passing AlwasyPrint as the pass name (see below) causes the front-end to print the diagnostic if the user has specified '-Rpass-analysis' without an '=<target-pass>’. Users of loop hints can pass that compiler option without having to specify the pass and they will get diagnostics for only those loops with loop hints. llvm-svn: 244555
* Update the syntax for load instruction in this example.Nick Lewycky2015-08-111-1/+1
| | | | llvm-svn: 244554
* Moved LoopVectorizeHints and related functions before ↵Tyler Nowicki2015-08-111-270/+270
| | | | | | LoopVectorizationLegality and LoopVectorizationCostModel. llvm-svn: 244552
* WebAssembly: simply assert on SNaN and NaNs with payloadsJF Bastien2015-08-112-6/+7
| | | | | | | | | | Summary: convertToHexString doesn't represent them correctly at this point in time. This is a follow-up to sunfish's suggestion in D11914. Subscribers: llvm-commits, sunfish, jfb Differential Revision: http://reviews.llvm.org/D11925 llvm-svn: 244551
* Simplify processLoop() by moving loop hint verification into ↵Tyler Nowicki2015-08-111-26/+35
| | | | | | Hints::allowVectorization(). llvm-svn: 244550
* [cmake] Hoist check for LLD sources up into root CMakeLists.txtReid Kleckner2015-08-114-1/+14
| | | | | | | | We will use this for ASan on Windows soon. When the ELF port of LLD matures, we can add other sanitizer integration tests to make sure they work with LLD. llvm-svn: 244549
* MIR Serialization: Serialize UsedPhysRegMask from the machine register info.Alex Lorenz2015-08-115-0/+165
| | | | | | | | | | | | This commit serializes the UsedPhysRegMask register mask from the machine register information class. The mask is serialized as an inverted 'calleeSavedRegisters' mask to keep the output minimal. This commit also allows the MIR parser to infer this mask from the register mask operands if the machine function doesn't specify it. Reviewers: Duncan P. N. Exon Smith llvm-svn: 244548
* [modules] Don't suggest deleting the module cache on an error if there is no ↵Richard Smith2015-08-111-0/+1
| | | | | | module cache for this build. llvm-svn: 244547
* [sanitizers] Use portable file read/write wrappers on process pipesReid Kleckner2015-08-112-9/+11
| | | | | | | This fixes a minor error checking bug around calling internal_read/write, and makes the code more portable for D11791. llvm-svn: 244546
* use range-based for loops; NFCISanjay Patel2015-08-111-8/+2
| | | | llvm-svn: 244545
* [libFuzzer] don't crash if the condition in a switch has unusual type (e.g. i72)Kostya Serebryany2015-08-112-0/+27
| | | | llvm-svn: 244544
* Address post-commit review from r243378.Sanjoy Das2015-08-111-0/+1
| | | | | | This checks that bork_directive occurs exactly twice in the test output. llvm-svn: 244543
* add commentDerek Schuff2015-08-111-0/+1
| | | | llvm-svn: 244542
* Add NaCl to long double/fp128 mangling testDerek Schuff2015-08-111-0/+3
| | | | | | | | | | | | | | | Summary: NaCl is a platform where long double is the same as double. Its mangling is spelled with "long double" but its ABI lowering is the same as double. Reviewers: rnk, chh Subscribers: jfb, cfe-commits, dschuff Differential Revision: http://reviews.llvm.org/D11922 llvm-svn: 244541
* [LAA] Change name from addRuntimeCheck to addRuntimeChecks, NFCAdam Nemet2015-08-114-11/+11
| | | | | | This was requested by Hal in D11205. llvm-svn: 244540
* [modules] Properly diagnose errors in module files for which we have noRichard Smith2015-08-113-10/+22
| | | | | | corresponding include location (those specified on the command line). llvm-svn: 244538
* Fix some tabs.Richard Smith2015-08-111-4/+3
| | | | llvm-svn: 244537
* MIR Parser: Report an error when a stack object is redefined.Alex Lorenz2015-08-103-3/+44
| | | | llvm-svn: 244536
* Add lduw and lwua aliases for SPARCv9.Joerg Sonnenberger2015-08-102-0/+20
| | | | llvm-svn: 244535
* MIR Parser: Report an error when a fixed stack object is redefined.Alex Lorenz2015-08-103-3/+37
| | | | llvm-svn: 244534
* [Windows] Implement FileExists, ReadFromFile, and FindPathToBinaryReid Kleckner2015-08-105-48/+96
| | | | | | | | | | | | Summary: These are needed to talk to llvm-symbolizer on Windows. Reviewers: samsonov Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D11920 llvm-svn: 244533
* Load/store for float registers from/to alternate space.Joerg Sonnenberger2015-08-102-6/+35
| | | | llvm-svn: 244532
* use range-based for loop; NFCISanjay Patel2015-08-101-5/+5
| | | | llvm-svn: 244531
* Remove some dead code.Richard Smith2015-08-102-19/+1
| | | | llvm-svn: 244530
* MIR Serialization: Serialize the liveout register mask machine operands.Alex Lorenz2015-08-105-0/+90
| | | | llvm-svn: 244529
* fix minsize detection: minsize attribute implies optimizing for sizeSanjay Patel2015-08-102-3/+39
| | | | llvm-svn: 244528
* [LoopVer] Remove unused pointer partition argument, NFC.Adam Nemet2015-08-102-4/+2
| | | | llvm-svn: 244527
* Append options for vectorization when pointer checking threshold is exceeded.Tyler Nowicki2015-08-103-0/+34
| | | | | | Following one of the appended options will allow the loop to be vectorized. We do not include a command line option for modifying the pointer checking threshold because there is no clang-level interface for this currently. llvm-svn: 244526
* Move file-local classes to an anonymous namespace. NFC.Rui Ueyama2015-08-101-166/+168
| | | | llvm-svn: 244525
* Add NaCl (a target where long double = double) to long double ABI testDerek Schuff2015-08-101-4/+24
| | | | | | | | | | | | | | A test was recently (r244468) added to cover long double calling convention codegen, distinguishing between Android and GNU conventions (where long doubles are fp128 and x86_fp80, respectively). Native Client is a target where long doubles are the same as doubles. This change augments the test to cover that case. Also rename the test to test/codeGen/X86_64-longdouble.c Differential Revision: http://reviews.llvm.org/D11921 llvm-svn: 244524
* Extend late diagnostics to include late test for runtime pointer checks.Tyler Nowicki2015-08-104-15/+84
| | | | | | This patch moves checking the threshold of runtime pointer checks to the vectorization requirements (late diagnostics) and emits a diagnostic that infroms the user the loop would be vectorized if not for exceeding the pointer-check threshold. Clang will also append the options that can be used to allow vectorization. llvm-svn: 244523
* [Windows] Relax test case patterns to allow parameter listsReid Kleckner2015-08-1015-28/+28
| | | | | | | | llvm-symbolizer will print parameter types. Split out from D11791. NFC llvm-svn: 244522
* test case for poisoning trivial membersNaomi Musgrave2015-08-101-0/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summary: A virtual base class and derived class should only poison their respective members upon destruction. In particular, trivial members should be poisoned directly, non-trivial members should be poisoned by their respective destructors, and references to non-trivial members should be poisoned. Reviewers: eugenis, kcc Differential Revision: http://reviews.llvm.org/D11912 Test case avoids casting to access members Run configurations to reflect expected runtime failure on assertions. Simplified access to internal members. Updated internal member structure of base. Revised assert in main to verify successful poisoning after dtor. Verify address of pointer is poisoned. Fixed assert err. Cleaned up test by removing extraneous prints, asserts. llvm-svn: 244521
* WebAssembly: print immediatesJF Bastien2015-08-104-20/+216
| | | | | | | | | | | | | | | Summary: For now output using C99's hexadecimal floating-point representation. This patch also cleans up how machine operands are printed: instead of special-casing per type of machine instruction, the code now handles operands generically. Reviewers: sunfish Subscribers: llvm-commits, jfb Differential Revision: http://reviews.llvm.org/D11914 llvm-svn: 244520
* Add support for the signx instrution alias of SPARCv9.Joerg Sonnenberger2015-08-102-0/+14
| | | | llvm-svn: 244519
* NFC. Fix some format issues in lib/CodeGen/MachineBasicBlock.cpp.Cong Hou2015-08-101-11/+13
| | | | llvm-svn: 244518
* Make frontend floating-point commutivity test X86 specific to avoid ↵Tyler Nowicki2015-08-101-1/+1
| | | | | | cost-model related problems on arm-thumb and hexagon. llvm-svn: 244517
* cmake: Make CMAKE_BUILD_TYPE check case-insensitiveJustin Bogner2015-08-101-5/+4
| | | | | | | Juergen pointed out that this variable is treated in a case insensitive way. llvm-svn: 244516
* If a variable template is inside a context with template arguments that is ↵Nick Lewycky2015-08-102-0/+12
| | | | | | being instantiated, and that instantiation fails, fail our instantiation instead of crashing. Errors have already been emitted. llvm-svn: 244515
* Revert r244308 since it's introducing test regressions on Linux:Oleksiy Vyalov2015-08-1023-3818/+1748
| | | | | | | | - TestLldbGdbServer.py both clang & gcc, i386 and x86_64 - TestConstVariables.py gcc, i386 and x86_64 - 112 failures clang, i386 llvm-svn: 244514
* MachineVerifier: Handle the optional def operand in a PATCHPOINT instruction.Alex Lorenz2015-08-102-1/+47
| | | | | | | | | | | | The PATCHPOINT instructions have a single optional defined register operand, but the machine verifier can't verify the optional defined register operands. This commit makes sure that the machine verifier won't report an error when a PATCHPOINT instruction doesn't have its optional defined register operand. This change will allow us to enable the machine verifier for the code generation tests for the patchpoint intrinsics. Reviewers: Juergen Ributzka llvm-svn: 244513
* [llvm-symbolizer] Remove underscores and other C mangling on WindowsReid Kleckner2015-08-107-47/+118
| | | | | | | | | | | | | | | Summary: This makes it so that reports symbolized after the fact with llvm-symbolizer are more similar to the ones we generate at runtime with in-process dbghelp. Reviewers: samsonov Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D11785 llvm-svn: 244512
* Update for llvm api change.Rafael Espindola2015-08-102-3/+14
| | | | llvm-svn: 244511
* Don't iterate over all sections in the ELFFile constructor.Rafael Espindola2015-08-105-62/+103
| | | | | | | With this we finally have an ELFFile that is O(1) to construct. This is helpful for programs like lld which have to do their own section walk. llvm-svn: 244510
* remove function names from comments; NFCSanjay Patel2015-08-101-22/+20
| | | | llvm-svn: 244509
* StackMap: FastISel: Add an appropriate number of immediate operands to theAlex Lorenz2015-08-104-3/+66
| | | | | | | | | | | | | | | | | | frame setup instruction. This commit ensures that the stack map lowering code in FastISel adds an appropriate number of immediate operands to the frame setup instruction. The previous code added just one immediate operand, which was fine for a target like AArch64, but on X86 the ADJCALLSTACKDOWN64 instruction needs two explicit operands. This caused the machine verifier to report an error when the old code added just one. Reviewers: Juergen Ributzka Differential Revision: http://reviews.llvm.org/D11853 llvm-svn: 244508
* Rename improperly named variable. NFC.Rafael Espindola2015-08-101-3/+3
| | | | llvm-svn: 244507
* Remove non-ascii characters.Tyler Nowicki2015-08-102-3/+3
| | | | llvm-svn: 244506
* Make fp vectorization test X86 specified to avoid cost-model related ↵Tyler Nowicki2015-08-101-1/+1
| | | | | | problems on arm-thumb and hexagon. llvm-svn: 244505
OpenPOWER on IntegriCloud