| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 321016
|
| |
|
|
| |
llvm-svn: 321015
|
| |
|
|
|
|
|
| |
LR was undefined entering outlined functions that contain calls. This made the
machine verifier unhappy when expensive checks were enabled. This fixes that.
llvm-svn: 321014
|
| |
|
|
|
|
| |
This has the same issue as the early pass disabled in r321010.
llvm-svn: 321013
|
| |
|
|
|
|
|
|
|
|
|
| |
Adds missing support for DW_FORM_data16.
Update of r320852/r320886, fixing the unittest again, this time use a
raw char string for the test data.
Differential Revision: https://reviews.llvm.org/D41090
llvm-svn: 321011
|
| |
|
|
|
|
| |
It creates invalid instructions. PR35688.
llvm-svn: 321010
|
| |
|
|
| |
llvm-svn: 321009
|
| |
|
|
|
|
|
| |
The code in Hexagon_MC::completeHVXFeatures wasn't setting all HVX-
related features correctly.
llvm-svn: 321008
|
| |
|
|
|
|
| |
Differential Revision: https://reviews.llvm.org/D40438
llvm-svn: 321007
|
| |
|
|
| |
llvm-svn: 321006
|
| |
|
|
| |
llvm-svn: 321005
|
| |
|
|
|
|
| |
Implement any-extend as zero-extend.
llvm-svn: 321004
|
| |
|
|
| |
llvm-svn: 321002
|
| |
|
|
| |
llvm-svn: 321001
|
| |
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D41059
llvm-svn: 320998
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
LLVM IR function names which disable mangling start with '\01'
(https://www.llvm.org/docs/LangRef.html#identifiers).
When an identifier like "\01@abc@" gets dumped to MIR, it is quoted, but
only with single quotes.
http://www.yaml.org/spec/1.2/spec.html#id2770814:
"The allowed character range explicitly excludes the C0 control block
allowed), the surrogate block #xD800-#xDFFF, #xFFFE, and #xFFFF."
http://www.yaml.org/spec/1.2/spec.html#id2776092:
"All non-printable characters must be escaped.
[...]
Note that escape sequences are only interpreted in double-quoted scalars."
This patch adds support for printing escaped non-printable characters
between double quotes if needed.
Should also fix PR31743.
Differential Revision: https://reviews.llvm.org/D41290
llvm-svn: 320996
|
| |
|
|
|
|
|
|
|
|
|
| |
The new helpers are supposed to be used in clang to generate TBAA
information in the new format proposed in this thread:
http://lists.llvm.org/pipermail/llvm-dev/2017-November/118748.html
Differential Revision: https://reviews.llvm.org/D39956
llvm-svn: 320993
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: Patch [4/4] in a series to add parsing of predicates and properly parse SVE ZIP1/ZIP2 instructions. This patch further improves diagnostic messages for when the SVE feature is not specified.
Reviewers: rengolin, fhahn, olista01, echristo, efriedma
Reviewed By: fhahn
Subscribers: sdardis, aemerson, javed.absar, tschuett, llvm-commits, kristof.beyls
Differential Revision: https://reviews.llvm.org/D40363
llvm-svn: 320992
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Fix an off by one error in the bounds checking for 'dinsu' and update
the ranges in the test comments so that they are accurate.
This version has the correct commit message.
Reviewers: atanasyan
Differential Revision: https://reviews.llvm.org/D41183
llvm-svn: 320991
|
| |
|
|
|
|
|
|
| |
Switch over to the lowering that uses target supplied operand types.
Differential Revision: https://reviews.llvm.org/D41201
llvm-svn: 320989
|
| |
|
|
|
|
|
|
|
|
| |
Enhance LVI to analyze the ‘ashr’ binary operation. This leverages the infrastructure in ConstantRange for the ashr operation.
Patch by Surya Kumari Jangala!
Differential Revision: https://reviews.llvm.org/D40886
llvm-svn: 320983
|
| |
|
|
|
|
|
|
|
| |
r319524 has made more G_MERGE_VALUES/G_UNMERGE_VALUES pairs legal than
are supported by the rest of the pipeline. Restrict that to only the
cases that we can currently handle: packing 32-bit values into 64-bit
ones, when we have hardware FP.
llvm-svn: 320980
|
| |
|
|
|
|
|
|
|
|
|
| |
Extend the ConstantRange implementation to compute the range of possible values resulting from an arithmetic right shift operation.
There will be a follow up patch to leverage this constant range infrastructure in LazyValueInfo.
Patch by Surya Kumari Jangala!
Differential Revision: https://reviews.llvm.org/D40881
llvm-svn: 320976
|
| |
|
|
|
|
| |
This reverts commit r320974. The commit message lacked the Differential Revison: line.
llvm-svn: 320975
|
| |
|
|
|
|
|
|
|
|
|
| |
Fix an off by one error in the bounds checking for 'dinsu' and update
the ranges in the test comments so that they are accurate.
Reviewers: atanasyan
https://reviews.llvm.org/D41183
llvm-svn: 320974
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: Patch [2/4] in a series to add parsing of predicates and properly parse SVE ZIP1/ZIP2 instructions.
Reviewers: rengolin, kristof.beyls, fhahn, mcrosier, evandro
Reviewed By: fhahn
Subscribers: aemerson, javed.absar, llvm-commits, tschuett
Differential Revision: https://reviews.llvm.org/D40361
llvm-svn: 320973
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: Patch [1/4] in a series to add parsing of predicates and properly parse SVE ZIP1/ZIP2 instructions.
Reviewers: rengolin, kristof.beyls, fhahn, mcrosier, evandro, echristo, efriedma
Reviewed By: fhahn
Subscribers: aemerson, javed.absar, llvm-commits, tschuett
Differential Revision: https://reviews.llvm.org/D40360
llvm-svn: 320970
|
| |
|
|
|
|
|
| |
This is a re-commit of r320464, after patch for gold plugin
was landed.
llvm-svn: 320968
|
| |
|
|
|
|
|
|
|
|
|
| |
For Cylone, the instruction "movi.2d vD, #0" is executed incorrectly in some rare
circumstances. Work around the issue conservatively by avoiding the instruction entirely.
This patch changes CodeGen so that problematic instructions are never
generated, and the AsmParser so that an equivalent instruction is used (with a
warning).
llvm-svn: 320965
|
| |
|
|
|
|
| |
Differential Revision: https://reviews.llvm.org/D41184
llvm-svn: 320964
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Search from AND nodes to find whether they can be propagated back to
loads, so that the AND and load can be combined into a narrow load.
We search through OR, XOR and other AND nodes and all bar one of the
leaves are required to be loads or constants. The exception node then
needs to be masked off meaning that the 'and' isn't removed, but the
loads(s) are narrowed still.
Differential Revision: https://reviews.llvm.org/D41177
llvm-svn: 320962
|
| |
|
|
| |
llvm-svn: 320960
|
| |
|
|
|
|
|
| |
This patch introduce a switch to control splitting of non-whole-alloca slices with default off.
The switch will be default on again after fixing an issue reported in PR35657.
llvm-svn: 320958
|
| |
|
|
|
|
|
|
| |
recently.
The block I moved things that need BWI and 512-bit or VLX is incorrectly qualified with just hasBWI || hasVLX. Here I've qualified it with hasBWI && (hasAVX512 || hasVLX) where the hasAVX512 will be replaced with allowing 512-bit vectors in an upcoming patch.
llvm-svn: 320957
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When we put the value in select placeholder we must pass
the value through simplification tracker due to the value might
be already simplified and erased.
This is a fix for PR35658.
Reviewers: john.brawn, uabelho
Reviewed By: john.brawn
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D41251
llvm-svn: 320956
|
| |
|
|
|
|
|
|
|
| |
getPointerDereferenceableBytes()""
llvm-clang-x86_64-expensive-checks-win is still broken, so the failure
seems unrelated.
llvm-svn: 320953
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
inserts functional and add tests.
Summary:
We had no tests for this and we couldn't do the optimization because of a bad use count check. We need to know how many non-undef pieces of the build vector were filled in and ensure our use count is equal to that. But on the shuffle combine version we need the use count to be 2.
The missing coverage was noticed during the review of D40335.
Reviewers: RKSimon, zvi, spatel
Reviewed By: RKSimon
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D41133
llvm-svn: 320950
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
These fields are useful for lld's gc-sections support
Also remove an unused field.
Subscribers: jfb, dschuff, jgravelle-google, aheejin, sunfish
Differential Revision: https://reviews.llvm.org/D41320
llvm-svn: 320946
|
| |
|
|
|
|
|
|
|
|
| |
getPointerDereferenceableBytes()"
This reverts commit 217067d5179882de9deb60d2e866befea4c126e7.
Fails on llvm-clang-x86_64-expensive-checks-win
llvm-svn: 320945
|
| |
|
|
|
|
|
|
|
|
| |
getPointerDereferenceableBytes()"
This reverts commit 8b7a7660a3904b2088bc594311bcea2c651def08.
I didn't mean to commit this.
llvm-svn: 320944
|
| |
|
|
|
|
| |
getPointerDereferenceableBytes()
llvm-svn: 320943
|
| |
|
|
| |
llvm-svn: 320941
|
| |
|
|
|
|
| |
using a SmallVector that really only ever has one element as a set.
llvm-svn: 320940
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
For byval arguments, the number of dereferenceable bytes is equal to
the size of the pointee, not the pointer.
Reviewers: hfinkel, rnk
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D41305
llvm-svn: 320939
|
| |
|
|
|
|
|
|
|
|
|
|
| |
getPointerDereferenceableBytes()
Reviewers: hfinkel, rnk
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D41288
llvm-svn: 320938
|
| |
|
|
|
|
| |
extractions.
llvm-svn: 320937
|
| |
|
|
|
|
| |
This allows us to remove some isel patterns that allowed MVT::i8 result type.
llvm-svn: 320936
|
| |
|
|
|
|
|
|
| |
and allow that to be legaized to VEXTRACT.
I think we can remove the VEXTRACT node completely and use a canonicalized EXTRACT_VECTOR_ELT instead. This is a first step.
llvm-svn: 320935
|
| |
|
|
| |
llvm-svn: 320934
|
| |
|
|
|
|
|
|
| |
Assuming we can safely adjust the broadcast index for the new type to keep it suitably aligned, then peek through BITCASTs when looking for the broadcast source.
Fixes PR32007
llvm-svn: 320933
|