| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
| |
The tests were checking for barriers which the ARM ARM says they must execute
as a full system DMB/DSB, rather than that they're UNDEFINED and LLVM does in
fact represent them.
The tests happened to be passing because they were using a non-versioned ARM
triple which didn't have *any* DMB/DSB instructions.
llvm-svn: 186662
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This allows "llvm-mc -disassemble" to accept two new features:
+ Using comma as a byte separator
+ Grouping bytes with '[' and ']' pairs.
The behaviour outside a [...] group is unchanged. But within the group once
llvm-mc encounters a true error, it stops rather than trying to resynchronise
the stream at the next byte. This is more useful for disassembly tests, where
we have an almost-instruction in mind and don't care what the misaligned
interpretation would be. Particularly if it means llvm-mc won't actually see
the next intended almost-instruction.
As a side effect, this means llvm-mc can disassemble its own -show-encoding
output if copy-pasted.
llvm-svn: 186661
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
implementation of the SROA algorithm. We were using the term 'partition'
in many places that no longer ever represented an actual partition, but
rather just an arbitrary slice of an alloca.
No functionality change intended here. Mostly just renaming of types,
functions, variables, and rewording of comments. Several comments were
rewritten to make a lot more sense in the new structure of things.
The stats are still weird and not reflective of how this really works.
I'll fix those up in a separate patch as it is a touch more semantic of
a change...
llvm-svn: 186659
|
| |
|
|
|
|
| |
parameter of ConvergingScheduler::SchedBoundary::getOtherResourceCount
llvm-svn: 186658
|
| |
|
|
|
|
| |
DataLayout variables.
llvm-svn: 186656
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
SROA.
The crux of the issue is that now we track uses of a partition of the
alloca in two places: the iterators over the partitioning uses and the
previously collected split uses vector. We weren't accounting for the
fact that the split uses might invalidate integer widening in ways other
than due to their width (in this case due to being volatile).
Further reduced testcase added to the tests.
llvm-svn: 186655
|
| |
|
|
| |
llvm-svn: 186653
|
| |
|
|
|
|
| |
can be reverted.
llvm-svn: 186643
|
| |
|
|
|
|
| |
No functionality change.
llvm-svn: 186642
|
| |
|
|
|
|
|
| |
uses that wanted it. Also change the interface for createCompileUnit
to compensate. Fix comments that refer to TheCU as well.
llvm-svn: 186637
|
| |
|
|
| |
llvm-svn: 186636
|
| |
|
|
| |
llvm-svn: 186635
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1> Use DebugInfoFinder to find debug info MDNodes.
2> Add disable-debug-info-verifier to disable verifying debug info.
3> Disable verifying for testing cases that fail (will update the testing cases
later on).
4> MDNodes generated by clang can have empty filename for TAG_inheritance and
TAG_friend, so DIType::Verify is modified accordingly.
Note that DebugInfoFinder does not list all debug info MDNode.
For example, clang can generate:
metadata !{i32 786468}, which will fail to verify.
This MDNode is used by debug info but not included in DebugInfoFinder.
This MDNode is generated as a temporary node in DIBuilder::createFunction
Value *TElts[] = { GetTagConstant(VMContext, DW_TAG_base_type) };
MDNode::getTemporary(VMContext, TElts)
llvm-svn: 186634
|
| |
|
|
|
|
| |
make more sense.
llvm-svn: 186632
|
| |
|
|
|
|
| |
it allows error recovery.
llvm-svn: 186628
|
| |
|
|
|
|
| |
Because it broke s390x and ppc64-linux buildbots. This reverts commit r186623.
llvm-svn: 186627
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
function definitions for more informative error messages. No functionality change.
All changes were made by the following bash script:
find test/CodeGen -name "*.ll" | \
while read NAME; do
echo "$NAME"
grep -q "^; *RUN: *llc.*debug" $NAME && continue
grep -q "^; *RUN:.*llvm-objdump" $NAME && continue
grep -q "^; *RUN: *opt.*" $NAME && continue
TEMP=`mktemp -t temp`
cp $NAME $TEMP
sed -n "s/^define [^@]*@\([A-Za-z0-9_]*\)(.*$/\1/p" < $NAME | \
while read FUNC; do
sed -i '' "s/;\([A-Za-z0-9_-]*\)\([A-Za-z0-9_-]*\):\( *\)$FUNC[:]* *\$/;\1\2-LABEL:\3$FUNC:/g" $TEMP
done
sed -i '' "s/;\(.*\)-LABEL-LABEL:/;\1-LABEL:/" $TEMP
sed -i '' "s/;\(.*\)-NEXT-LABEL:/;\1-NEXT:/" $TEMP
sed -i '' "s/;\(.*\)-NOT-LABEL:/;\1-NOT:/" $TEMP
sed -i '' "s/;\(.*\)-DAG-LABEL:/;\1-DAG:/" $TEMP
mv $TEMP $NAME
done
This script catches a superset of the cases caught by the script associated with commit r186280. It initially found some false positives due to unusual constructs in a minority of tests; all such cases were disambiguated first in commit r186621.
llvm-svn: 186624
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Dump optional data directory entries in the PE/COFF header, so that
we can test the output of LLD linker. This patch updates the test binary
file, but the source of the binary is the same. I just re-linked the file.
I don't know how the previous file was linked, but the previous file did
not have any data directory entries for some reason.
Reviewers: rafael
CC: llvm-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D1148
llvm-svn: 186623
|
| |
|
|
| |
llvm-svn: 186622
|
| |
|
|
|
|
| |
function names that also were names of instructions and/or doing other unusual things that were making the test not amenable to otherwise scriptable pattern matching.) No functionality change.
llvm-svn: 186621
|
| |
|
|
|
|
|
|
| |
PLI requires both the Thumb2 and the ARMv7 feature.
Related to <rdar://problem/14403733>.
llvm-svn: 186620
|
| |
|
|
|
|
| |
https://bugs.freedesktop.org/show_bug.cgi?id=66175
llvm-svn: 186616
|
| |
|
|
| |
llvm-svn: 186615
|
| |
|
|
| |
llvm-svn: 186614
|
| |
|
|
| |
llvm-svn: 186613
|
| |
|
|
|
|
| |
This should fix the chapuni bots.
llvm-svn: 186611
|
| |
|
|
|
|
|
| |
s/Tokenize/Tokenizer/ to make the comment correspond to the
parameter name
llvm-svn: 186608
|
| |
|
|
|
|
| |
It also doubles a test that F_Append works.
llvm-svn: 186606
|
| |
|
|
|
|
| |
This reverts commit r186599 as I didn't want to commit this yet.
llvm-svn: 186601
|
| |
|
|
| |
llvm-svn: 186600
|
| |
|
|
|
|
|
| |
uses that wanted it. Also change the interface for createCompileUnit
to compensate. Fix comments that refer to TheCU as well.
llvm-svn: 186599
|
| |
|
|
|
|
|
|
|
| |
* assert that the return value is one of the documented values on msdn.
* on FILE_TYPE_UNKNOWN, check GetLastError.
Unfortunately I can't think of a way to get a FILE_TYPE_UNKNOWN on a test.
llvm-svn: 186595
|
| |
|
|
|
|
| |
function definitions for more informative error messages. No functionality change.
llvm-svn: 186594
|
| |
|
|
| |
llvm-svn: 186593
|
| |
|
|
|
|
|
|
| |
indices.
This brings the compile time of the SLP-Vectorizer to about 2.5% of OPT for my testcase.
llvm-svn: 186592
|
| |
|
|
|
|
|
|
|
| |
file_type::fifo_file in sys::fs::getStatus(HANDLE).
It fixes llvm/test/Other/close-stderr.ll on msys.
FIXME: Provide unittests.
llvm-svn: 186588
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The plan is to use it for clang and lld.
Major behavior changes:
- We can now parse UTF-16 files that have a byte order mark.
- PR16209: Don't drop backslashes on the floor if they don't escape
anything.
The actual parsing loop was based on code from Clang's driver.cpp,
although it's been rewritten to track its state with control flow rather
than state variables.
Reviewers: hans
Differential Revision: http://llvm-reviews.chandlerc.com/D1170
llvm-svn: 186587
|
| |
|
|
|
|
| |
sys::fs::status() doesn't work on pipes. Investigating.
llvm-svn: 186586
|
| |
|
|
|
|
| |
Tests for r186574.
llvm-svn: 186580
|
| |
|
|
| |
llvm-svn: 186576
|
| |
|
|
| |
llvm-svn: 186574
|
| |
|
|
|
|
| |
This should be the last of the R.SBG patches for now.
llvm-svn: 186573
|
| |
|
|
|
|
| |
Also, fix the namespace for two instructions that I missed previously.
llvm-svn: 186572
|
| |
|
|
|
|
|
|
|
| |
The original code only folded SRA into ROTATE ... SELECTED BITS
if there was no outer shift. This patch splits out that check
and generalises it slightly. The extra cases aren't really that
interesting, but this is paving the way for RNSBG support.
llvm-svn: 186571
|
| |
|
|
|
|
| |
Extend the previous R.SBG patches to handle XORs.
llvm-svn: 186570
|
| |
|
|
|
|
|
|
|
|
|
|
| |
In hindsight, using "RISBG" for something that can be any type of
R.SBG instruction was a bit confusing, so this renames it to RxSBG.
That might not be the best choice either, since there is an instruction
called RXSBG, but hopefully the lower-case letter stands out enough.
While there I fixed a couple of GNUisms that had crept in --
sorry about that!
llvm-svn: 186569
|
| |
|
|
|
|
|
|
| |
The N3VDIntnp pattern takes bits<5> and I gave it 6 bits.
Thanks to Jiangning Liu for spotting it!
llvm-svn: 186568
|
| |
|
|
|
|
| |
parsing. The corresponding test cases are added to the patch.
llvm-svn: 186567
|
| |
|
|
|
|
| |
should.
llvm-svn: 186566
|
| |
|
|
|
|
|
|
|
|
|
|
| |
end of a vector. This was found with ASan. I've had one other report of
a crasher, but thus far been unable to reproduce the crash. It may well
be fixed with this version, and if not I'd like to get more information
from the build bots about what is happening.
See r186316 for the full commit log for the new implementation of the
SROA algorithm.
llvm-svn: 186565
|