- Sep 30, 2016
-
-
Rafael Espindola authored
We would crash when a non-alloca section pointed to a gced part of a merge section. That can happen when a C/c++ constant in put in a merge section and debug info is present. llvm-svn: 282845
-
Petr Hosek authored
When LLVM_INSTALL_TOOLCHAIN_ONLY is used and LLVM_TOOLCHAIN_TOOLS contains a tool which is a symlink, it would be ignored. This already worked before but got broken in r282510. Differential Revision: https://reviews.llvm.org/D25067 llvm-svn: 282844
-
Craig Topper authored
[AVX-512] Store address operand should be an input operand for the special stack spilling pseudos for XMM16-31 and YMM16-31 without VLX. llvm-svn: 282843
-
Craig Topper authored
[AVX-512] Add the special stack spilling pseudos for XMM16-31 and YMM16-31 without VLX to teh isFrameLoadOpcode and isFrameStoreOpcode. llvm-svn: 282842
-
Craig Topper authored
Revert r282835 "[AVX-512] Always use the full 32 register vector classes for addRegisterClass regardless of whether AVX512/VLX is enabled or not." Turns out this doesn't pass verify-machineinstrs. llvm-svn: 282841
-
Kostya Serebryany authored
llvm-svn: 282839
-
Adam Nemet authored
llvm-svn: 282838
-
Eric Liu authored
Reviewers: hokein Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D24963 llvm-svn: 282837
-
Craig Topper authored
[X86] Add AVX-512 VTs to findRepresentativeClass as well as v16i16 which was also missing. Change register class to include the extra 16 AVX512 registers. I'm not completely sure what this method does or why all the 256-bit VTs returned VR128RegClass when the comments on the method definiton say it should return the largest super register class. I just figured AVX-512 should be similar. llvm-svn: 282836
-
Craig Topper authored
[AVX-512] Always use the full 32 register vector classes for addRegisterClass regardless of whether AVX512/VLX is enabled or not. If AVX512 is disabled, the registers should already be marked reserved. Pattern predicates and register classes on instructions should take care of most of the rest. Loads/stores and physical register copies for XMM16-31 and YMM16-31 without VLX have already been taken care of. I'm a little unclear why this changed the register allocation of the SSE2 run of the sad.ll test, but the registers selected appear to be valid after this change. llvm-svn: 282835
-
Adam Nemet authored
llvm-svn: 282834
-
Piotr Padlewski authored
Summary: We don't want to decay hot callsites to import chains of hot callsites. The same mechanism is used in LIPO. Reviewers: tejohnson, eraman, mehdi_amini Subscribers: llvm-commits, mehdi_amini Differential Revision: https://reviews.llvm.org/D24976 llvm-svn: 282833
-
Matt Arsenault authored
For some reason there are both of these available, except for scalar 64-bit compares which only has u64. I'm not sure why there are both (I'm guessing it's for the one bit inputs we don't use), but for consistency always using the unsigned one. llvm-svn: 282832
-
Kostya Serebryany authored
[libFuzzer] remove the code for -print_pcs=1 with the old coverage. It still works with the new one (trace-pc-guard) llvm-svn: 282831
-
Jim Ingham authored
llvm-svn: 282830
-
Kostya Serebryany authored
[libFuzzer] more the feature set to InputCorpus; on feature update, change the feature counter of the old best input llvm-svn: 282829
-
Adam Nemet authored
llvm-svn: 282826
-
Jason Molenda authored
instruction inspection to UnwindPlans. llvm-svn: 282825
-
Enrico Granata authored
llvm-svn: 282824
-
Enrico Granata authored
Do not assume we will be able to discover the return type of this selector call, for that is not true in i386 mode llvm-svn: 282823
-
Justin Lebar authored
Summary: This lets people link against LLVM and their own version of the UTF library. I determined this only affects llvm, clang, lld, and lldb by running $ git grep -wl 'UTF[0-9]\+\|\bConvertUTF\bisLegalUTF\|getNumBytesFor' | cut -f 1 -d '/' | sort | uniq clang lld lldb llvm Tested with ninja lldb ninja check-clang check-llvm check-lld (ninja check-lldb doesn't complete for me with or without this patch.) Reviewers: rnk Subscribers: klimek, beanz, mgorny, llvm-commits Differential Revision: https://reviews.llvm.org/D24996 llvm-svn: 282822
-
Adam Nemet authored
This completes LV. llvm-svn: 282821
-
Adam Nemet authored
llvm-svn: 282820
-
Reid Kleckner authored
Code that doesn't use floating point and doesn't use SSE (kernel code) shouldn't save and restore SSE registers. Fixes PR30503 llvm-svn: 282819
-
Rafael Espindola authored
We were implicitly creating space for the headers. That is not the behaviour of bfd, which requires the script to use SIZEOF_HEADERS. The difference is important for scripts that don't use SIZEOF_HEADERS and expect the first section to be at 0. llvm-svn: 282818
-
Quentin Colombet authored
This uses a TableGen'ed like structure for all 3-operands instrs. The output of the RegBankSelect pass should be identical but the RegisterBankInfo will do less dynamic allocations. llvm-svn: 282817
-
Quentin Colombet authored
This is the kind of input TableGen should generate at some point. NFC. llvm-svn: 282816
-
Quentin Colombet authored
Make sure that the ValueMappings contain the value we expect at the indices we expect. NFC. llvm-svn: 282815
-
Rafael Espindola authored
Currently lld will implicitly reserve space for the headers. This is not the case is bfd, where it is the script responsibility to use SIZEOF_HEADERS. This means that a script not using SIZEOF_HEADERS and expecting the address of the first section to be 0 would fail with lld. I am fixing that is the next commit. This one just makes the tests explicitly use SIZEOF_HEADERS to avoid the dependency on the current behaviour. llvm-svn: 282814
-
Adam Nemet authored
(Recommit after making sure IsVerbose gets properly initialized in DiagnosticInfoOptimizationBase. See previous commit that takes care of this.) OptimizationRemarkAnalysis directly takes the role of the report that is generated by LAA. Then we need the magic to be able to turn an LAA remark into an LV remark. This is done via a new OptimizationRemark ctor. llvm-svn: 282813
-
Adam Nemet authored
llvm-svn: 282812
-
Jason Molenda authored
llvm-svn: 282811
-
Jim Ingham authored
I can't reproduce locally. Hopefully this will help us catch the reason. llvm-svn: 282810
-
Zachary Turner authored
This reverts commit r282804 as it seems to use some C++ features that not all compilers support. llvm-svn: 282809
-
Vitaly Buka authored
llvm-svn: 282808
-
Rui Ueyama authored
llvm-svn: 282807
-
Rafael Espindola authored
llvm-svn: 282806
-
Vitaly Buka authored
Reviewed by eugenis offline, as reviews.llvm.org is down. llvm-svn: 282805
-
Zachary Turner authored
enumerate allows you to iterate over a range by pairing the iterator's value with its index in the enumeration. This gives you most of the benefits of using a for loop while still allowing the range syntax. llvm-svn: 282804
-
Chris Bieneman authored
IRExecutionUnit.h includes Module.h, which through a long chain of includes eventually includes Attributes.gen. This fixes a build issue reported to lldb-dev by Hal. Thanks Hal! llvm-svn: 282803
-