- Aug 30, 2013
-
-
Daniel Jasper authored
Before: aaaaaaaaaaaaa->aaaaaaaaaaaaaaaaaaaaaaaa()->aaaaaaaaaaaaaae( 0)->aaaaaaaaaaaaaaa(); After: aaaaaaaaaaaaa->aaaaaaaaaaaaaaaaaaaaaaaa() ->aaaaaaaaaaaaaae(0) ->aaaaaaaaaaaaaaa(); llvm-svn: 189655
-
Craig Topper authored
llvm-svn: 189654
-
Craig Topper authored
Teach X86 backend to create BMI2 BZHI instructions from (and X, (add (shl 1, Y), -1)). Fixes PR17038. llvm-svn: 189653
-
Yunzhong Gao authored
The patch was discussed in Phabricator. See: http://llvm-reviews.chandlerc.com/D1281 llvm-svn: 189649
-
Michael Gottesman authored
This reverts commit r189619. The commit was breaking the arm_neon_intrinsic test. llvm-svn: 189648
-
Richard Smith authored
llvm-svn: 189647
-
Richard Smith authored
from a PCH/module. llvm-svn: 189646
-
Richard Smith authored
llvm-svn: 189645
-
Charles Davis authored
Based on a patch by Benno Rice! llvm-svn: 189644
-
Andrew Trick authored
This removes all expensive pressure tracking logic from the scheduling critical path of node comparison. llvm-svn: 189643
-
Andrew Trick authored
Return true for LRGs that end at EarlyClobber or Register slots. llvm-svn: 189642
-
Andrew Trick authored
Only compare pressure within the same set. When multiple sets are affected, we prioritize the most constrained set. llvm-svn: 189641
-
Andrew Trick authored
Created SUPressureDiffs array to hold the per node PDiff computed during DAG building. Added a getUpwardPressureDelta API that will soon replace the old one. Compute PressureDelta here from the precomputed PressureDiffs. Updating for liveness will come next. llvm-svn: 189640
-
Bill Schmidt authored
Mostly trivial patch adding support for compares. The meat of the work was added with the branch support. llvm-svn: 189639
-
Bill Schmidt authored
llvm-svn: 189638
-
Bill Schmidt authored
Here are a few more tests that now pass after the recent fast-isel commits. llvm-svn: 189637
-
Bill Schmidt authored
This is the next big chunk of fast-isel code. The primary purpose is to implement selection of loads and stores, but there is a lot of drag-along to support this. The common code to analyze addresses for both loads and stores is substantial. It's also necessary to add the materialization code for global values. Related to load-store processing is the code to fold loads into integer extends, since otherwise we generate lots of redundant instructions. We also need to add some overrides to some FastEmit routines to ensure we don't assign GPR 0 to a virtual register when this would change the meaning of an instruction. I added handling selection of a few binary arithmetic instructions, to enable committing some test cases I wrote a while back. Finally, ap couple of miscellaneous changes: * I cleaned up some poor style from a previous patch in PPCISelLowering.cpp, pointed out by David Blaikie. * I enlarged the Addr.Offset field to avoid sign problems with 32-bit offsets. llvm-svn: 189636
-
Andrew Trick authored
llvm-svn: 189635
-
Marshall Clow authored
llvm-svn: 189634
-
Eric Christopher authored
again. This test should a) test IR or be moved, and b) get an actual option for the dwarf pub sections. llvm-svn: 189633
-
Bill Wendling authored
llvm-svn: 189632
-
Eric Christopher authored
any maintained consumers of it on that platform. llvm-svn: 189631
-
Eric Christopher authored
llvm-svn: 189630
-
Richard Smith authored
llvm-svn: 189629
-
Fariborz Jahanian authored
should infer migration to NS_OPTIONS. llvm-svn: 189628
-
Richard Smith authored
these in eagerly if we're not actually processing a translation unit. The added laziness here also avoids us loading in parts of a CXXRecordDecl earlier than an upcoming class template specialization merging patch would like. Ideally, we should mark the vtable as used when we see a definition for the key function, rather than having a separate pass over dynamic classes at the end of the TU. The existing approach is pretty bad for PCH/modules, since it forcibly loads the declarations of all key functions in all imported modules, whether or not those key functions are defined. llvm-svn: 189627
-
Howard Hinnant authored
llvm-svn: 189626
-
Eli Friedman authored
I changed the diagnostic printing code because it's probably better to cut off a digit from DBL_MAX than to print something like 1.300000001 when the user wrote 1.3. llvm-svn: 189625
-
Eli Friedman authored
This is a re-commit of r189442; I'll follow up with clang changes. The previous default was almost, but not quite enough digits to represent a floating-point value in a manner which preserves the representation when it's read back in. The larger default is much less confusing. I spent some time looking into printing exactly the right number of digits if a precision isn't specified, but it's kind of complicated, and I'm not really sure I understand what APFloat::toString is supposed to output for FormatPrecision != 0 (or maybe the current API specification is just silly, not sure which). I have a WIP patch if anyone is interested. llvm-svn: 189624
-
Howard Hinnant authored
llvm-svn: 189623
-
Manman Ren authored
We use CXX mangler to generate unique identifier for external C++ struct, union, class and enum. Types with unique identifier are added to retained types by DIBuilder. Testing cases are updated to reflect the unique identifier generated for types. The order of MDNodes is changed because of retained types and testing cases are updated accordingly. Testing case debug-info-uuid.cpp now emits error with Itanium mangler, since uuid is not yet handled in Itanium mangler. And it will check for the error message. llvm-svn: 189622
-
Manman Ren authored
createClassType, createStructType, createUnionType, createEnumerationType, and createForwardDecl will retain a type when created with a unique identifier, to make sure they are treated as used even when all uses are replaced with the identifiers. Use TrackingVH<MDNode> instead of MDNode in AllRetainTypes, since the created node can later be updated. The change will be tested when clients of DIBuilder start to pass in non-empty unique identifier. llvm-svn: 189621
-
Peter Collingbourne authored
llvm-svn: 189620
-
Jim Grosbach authored
In addition to recognizing when the multiply's second argument is coming from an explicit VDUPLANE, also look for a plain scalar f32 reference and reference it via the corresponding vector lane. rdar://14870054 llvm-svn: 189619
-
Jim Grosbach authored
llvm-svn: 189618
-
Jim Grosbach authored
llvm-svn: 189617
-
DeLesley Hutchins authored
Patch by chris.wailes@gmail.com. llvm-svn: 189616
-
Reid Kleckner authored
Requires shuffling the CPack code up before add_subdirectory(tools), but that's where the version settings are anyway. llvm-svn: 189615
-
- Aug 29, 2013
-
-
Rui Ueyama authored
llvm-svn: 189614
-
Warren Hunt authored
Modified ms-build configuration file to be version locked to the VS2010 toolchain, this avoids conflicts with having VS2012 and Win7SDK used at the same time. llvm-svn: 189613
-