summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Revert "Add update_test.py script."Tobias Grosser2016-02-292-448/+0
| | | | | | | | This reverts commit r261899. Even though I am not yet 100% certain, this is commit is the only one that has some relation to the recent cmake failures in Polly. llvm-svn: 262202
* [X86] Disabling avx512f should also disable avx512vbmi and avx512ifma. ↵Craig Topper2016-02-295-4/+48
| | | | | | Enabling avx512vbmi or avx512ifma should enable avx512f. Add command line switches and header defines for avx512ifma and avx512vbmi. llvm-svn: 262201
* [X86] Enabling xsave should not enable AVX. I seem to have done this, but I ↵Craig Topper2016-02-291-6/+2
| | | | | | don't know why. llvm-svn: 262200
* [OPENMP 4.5] Initial support for data members in 'reduction' clauses.Alexey Bataev2016-02-293-143/+191
| | | | | | | | OpenMP 4.5 allows to privatize non-static data members of current class in non-static member functions. Patch adds initial parsing/semantic analysis for data members support in 'reduction' clauses. llvm-svn: 262199
* [clang-cl] /EHc should not effect functions with explicit exception ↵David Majnemer2016-02-295-12/+32
| | | | | | | | | | specifications Functions with an explicit exception specification have their behavior dictated by the specification. The additional /EHc behavior only comes into play if no exception specification is given. llvm-svn: 262198
* [clang-cl] /EHc should not have an effect on /EHaDavid Majnemer2016-02-292-1/+10
| | | | | | This matches behavior with MSVC. llvm-svn: 262197
* [PM] Wire up optimization levels and default pipeline construction APIsChandler Carruth2016-02-283-3/+217
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | in the PassBuilder. These are really just stubs for now, but they give a nice API surface that Clang or other tools can start learning about and enabling for experimentation. I've also wired up parsing various synthetic module pass names to generate these set pipelines. This allows the pipelines to be combined with other passes and have their order controlled, with clear separation between the *kind* of canned pipeline, and the *level* of optimization to be used within that canned pipeline. The most interesting part of this patch is almost certainly the spec for the different optimization levels. I don't think we can ever have hard and fast rules that would make it easy to determine whether a particular optimization makes sense at a particular level -- it will always be in large part a judgement call. But hopefully this will outline the expected rationale that should be used, and the direction that the pipelines should be taken. Much of this was based on a long llvm-dev discussion I started years ago to try and crystalize the intent behind these pipelines, and now, at long long last I'm returning to the task of actually writing it down somewhere that we can cite and try to be consistent with. Differential Revision: http://reviews.llvm.org/D12826 llvm-svn: 262196
* Remove dead code for ELF.Rui Ueyama2016-02-286-112/+13
| | | | llvm-svn: 262195
* Remove dead code for ELF.Rui Ueyama2016-02-287-136/+3
| | | | | | The preload feature was buggy that we had disabled it even for ELF. llvm-svn: 262194
* Remove remaining code for COFF.Rui Ueyama2016-02-287-150/+0
| | | | llvm-svn: 262193
* Remove DriverTest.h.Rui Ueyama2016-02-282-124/+67
| | | | | | | | Because the class is used only by one instance, we do not have to use template there in DriverTest.h. Everything can be moved to DarwinLdDriverTest.cpp. llvm-svn: 262192
* Make the entry point function calls consistent. NFC.Rui Ueyama2016-02-284-9/+9
| | | | llvm-svn: 262191
* Move functionality of UniversalDriver to the entry point file.Rui Ueyama2016-02-289-311/+109
| | | | | | | | | | | | | | UniversalDriver was used as a dispatcher to each platform-specific driver. It had its own Options.td file. It was not just too much to parse only a few options (we only want to parse -core, -flavor or argv[0]), but also interpreted arguments too early. For example, if you invoke lld as "lld -flavor gnu ... -help", then you'd get the UniversalDriver's help message instead of GnuDriver's. This patch eliminates the use of Options from the dispatcher. http://reviews.llvm.org/D17686 llvm-svn: 262190
* [modules] Prefer more complete array types.Vassil Vassilev2016-02-287-40/+66
| | | | | | | | | | | | | | If we import a module that has a complete array type and one that has an incomplete array type, the declaration found by name lookup might be the one with the incomplete type, possibly resulting in rejects-valid. Now, the name lookup prefers decls with a complete array types. Also, diagnose cases when the redecl chain has array bound, different from the merge candidate. Reviewed by Richard Smith. llvm-svn: 262189
* [PM] Appease mingw32's auto-import DLL build with minimal tweaks, with fix ↵NAKAMURA Takumi2016-02-2828-0/+60
| | | | | | | | for clang. char AnalysisBase::ID should be declared as extern and defined in one module. llvm-svn: 262188
* [mips] Remove unused function declarations from MipsRegisterInfo.h. NFC.Vasileios Kalintiris2016-02-281-10/+0
| | | | llvm-svn: 262187
* Revert r262185, "[PM] Appease mingw32's auto-import DLL build with minimal ↵NAKAMURA Takumi2016-02-2828-60/+0
| | | | | | | | tweaks." I'll rework soon. llvm-svn: 262186
* [PM] Appease mingw32's auto-import DLL build with minimal tweaks.NAKAMURA Takumi2016-02-2828-0/+60
| | | | | | char AnalysisBase::ID should be declared as extern and defined in one module. llvm-svn: 262185
* Delete more COFF and ELF bits from the old linker.Rafael Espindola2016-02-289-85/+7
| | | | llvm-svn: 262184
* Delete dead arch types.Rafael Espindola2016-02-281-1/+1
| | | | llvm-svn: 262183
* Delete a bit more ELF and COFF from the old linker.Rafael Espindola2016-02-281-9/+5
| | | | llvm-svn: 262182
* Delete more ELF bits from the old linker.Rafael Espindola2016-02-2827-964/+4
| | | | llvm-svn: 262181
* WebAssembly: fix testJF Bastien2016-02-281-10/+10
| | | | | | Operand order seems to have changed, the new one is nicer. llvm-svn: 262180
* WebAssembly: fix buildJF Bastien2016-02-282-3/+3
| | | | | | More API churn, experimental target got sad. llvm-svn: 262179
* Add ARM EHABI-related constants to unwind.h.Logan Chien2016-02-281-1/+18
| | | | | | | | | | Adds a number of constants, defined in the ARM EHABI spec, to the Clang lib/Headers/unwind.h header. This is prerequisite for landing http://reviews.llvm.org/D15781, as previously discussed there. Patch by Timon Van Overveldt. llvm-svn: 262178
* [CLANG] [AVX512] [BUILTIN] Adding PSLL{V|W|Wi}{128|256|512} builtinMichael Zuckerman2016-02-287-1/+496
| | | | | | Differential Revision: http://reviews.llvm.org/D17685 llvm-svn: 262177
* [AVX512][PSLLW ][PSLLV] Change imm8 to intMichael Zuckerman2016-02-284-21/+21
| | | | | | Differential Revision: http://reviews.llvm.org/D17684 llvm-svn: 262176
* ELF: Remove OutSection class and use a map instead.Rui Ueyama2016-02-282-24/+19
| | | | | | | It is easier to handle section filler data separately rather than merging with section names. llvm-svn: 262175
* Simplify. NFC.Rui Ueyama2016-02-281-6/+5
| | | | llvm-svn: 262174
* Remove dead header file.Rui Ueyama2016-02-281-39/+0
| | | | llvm-svn: 262173
* Remove obsolte TODOs. They are for the old gnu driver.Rui Ueyama2016-02-281-99/+0
| | | | llvm-svn: 262172
* Remove lld/Core/range.h.Rui Ueyama2016-02-288-988/+3
| | | | | | | | | | | IIUC, range was an experiment to see how N3350 would work in LLD. It turned out it didn't get traction, and it is basically duplicate of iterator_range in ADT. We have only two occurrences of range, and all of them are easily rewritten without it. http://reviews.llvm.org/D17687 llvm-svn: 262171
* Remove an empty TODO file.Rui Ueyama2016-02-281-2/+0
| | | | llvm-svn: 262170
* Remove unused #include.Rui Ueyama2016-02-281-1/+0
| | | | llvm-svn: 262169
* ELF: Add --help option.Rui Ueyama2016-02-285-2/+18
| | | | llvm-svn: 262168
* ELF: Add --version option.Rui Ueyama2016-02-286-11/+29
| | | | llvm-svn: 262167
* Remove dead code. This error type is for the old linker script reader.Rui Ueyama2016-02-282-55/+0
| | | | llvm-svn: 262166
* Remove dead header files.Rui Ueyama2016-02-282-1500/+0
| | | | llvm-svn: 262165
* Remove a few bits of elf from the old linker.Rafael Espindola2016-02-284-5/+0
| | | | llvm-svn: 262164
* Delete the old script parser.Rafael Espindola2016-02-2829-4166/+1
| | | | | | It was ELF specific. llvm-svn: 262163
* Test cleanupsXinliang David Li2016-02-283-6/+6
| | | | llvm-svn: 262162
* [PGO] add a test for available_externally functionsXinliang David Li2016-02-285-0/+78
| | | | llvm-svn: 262161
* Remove dead code.Rui Ueyama2016-02-283-6/+0
| | | | llvm-svn: 262160
* Rename elf2 to elf.Rafael Espindola2016-02-2830-142/+142
| | | | llvm-svn: 262159
* Remove the old ELF linker.Rafael Espindola2016-02-28779-60546/+3
| | | | | | I think it is clear by now that the new linker is viable. llvm-svn: 262158
* [PGO] Remove redundant counter copies for avail_extern functions.Xinliang David Li2016-02-272-3/+42
| | | | | | Differential Revision: http://reviews.llvm.org/D17654 llvm-svn: 262157
* Revert "Fix bug with register values byte order in expression evaluation."Todd Fiala2016-02-271-10/+3
| | | | | | | | | This reverts commit r262041, which caused asserts starting yesterday on the OS X testbot. See details in: https://llvm.org/bugs/show_bug.cgi?id=26758 llvm-svn: 262156
* ELF: Remove relSize function from ICF.cpp. NFC.Rui Ueyama2016-02-271-11/+3
| | | | llvm-svn: 262155
* CodeGen: Remove an iterator => pointer conversion, NFCDuncan P. N. Exon Smith2016-02-271-2/+2
| | | | | | Part of PR26753. llvm-svn: 262154
* AMDGPU: More bits of frame index are known to be zeroMatt Arsenault2016-02-276-42/+40
| | | | | | | | | | | | The maximum private allocation for the whole GPU is 4G, so the maximum possible index for a single workitem is the maximum size divided by the smallest granularity for a dispatch. This increases the number of known zero high bits, which enables more offset folding. The maximum private size per workitem with this is 128M but may be smaller still. llvm-svn: 262153
OpenPOWER on IntegriCloud