Commit Graph

136047 Commits

Author SHA1 Message Date
Hal Finkel 69b07a2c3a Update GVN to support vectors of pointers.
GVN will now generate ptrtoint instructions for vectors of pointers.
Fixes PR14166.

llvm-svn: 166624
2012-10-24 21:22:30 +00:00
Nadav Rotem 30cc37ae2b Make LegalizeKind public so that we can use it outside of TargetLowering.
llvm-svn: 166623
2012-10-24 20:59:17 +00:00
Nadav Rotem e4f491e7ee whitespace
llvm-svn: 166622
2012-10-24 20:58:40 +00:00
Nadav Rotem 1052df1049 Document the -force-vector-width flag.
llvm-svn: 166621
2012-10-24 20:47:55 +00:00
Nadav Rotem a721b21c64 LoopVectorizer: Add a basic cost model which uses the VTTI interface.
llvm-svn: 166620
2012-10-24 20:36:32 +00:00
Eli Friedman be20d43232 Update regression tests for r166617.
llvm-svn: 166619
2012-10-24 20:28:18 +00:00
Enrico Granata 48ea80f9ff Reimplementing SBValue/ValueObject.GetValueAsUnsigned() in terms of appropriate calls in Scalar - Making sure Scalar does the right thing when casting signed values to unsigned ones.
llvm-svn: 166618
2012-10-24 20:24:39 +00:00
Eli Friedman 6fd26424af Don't print scope qualifiers for references to a type defined locally in a function. Patch by Grzegorz Jablonski.
llvm-svn: 166617
2012-10-24 20:21:25 +00:00
Eli Friedman 82dc260385 Add an additional test for namespaces and -Wmissing-variable-declarations. Move C++ test into SemaCXX.
llvm-svn: 166616
2012-10-24 20:14:09 +00:00
Douglas Gregor b6af6c23cd (De-)serialize the preprocessor options, including macros defined,
-include'd files, etc. 

llvm-svn: 166614
2012-10-24 20:05:57 +00:00
Evan Cheng 59ed7d45a6 Fix a miscompilation caused by a typo. When turning a adde with negative value
into a sbc with a positive number, the immediate should be complemented, not
negated. Also added a missing pattern for ARM codegen.

rdar://12559385

llvm-svn: 166613
2012-10-24 19:53:01 +00:00
Hal Finkel 30bd9346a0 getSmallConstantTripMultiple should never return zero.
When the trip count is -1, getSmallConstantTripMultiple could return zero,
and this would cause runtime loop unrolling to assert. Instead of returning
zero, one is now returned (consistent with the existing overflow cases).
Fixes PR14167.

llvm-svn: 166612
2012-10-24 19:46:44 +00:00
Kaelyn Uhrain 79a9711918 Make ~Operator() protected so subclasses can inherit it and not have
a bunch of errors for all the Operator subclasses such as:

include/llvm/Operator.h:76:7: error: deleted function 'virtual llvm::OverflowingBinaryOperator::~OverflowingBinaryOperator()'
include/llvm/Operator.h:43:3: error: overriding non-deleted function 'virtual llvm::Operator::~Operator()'
include/llvm/Operator.h:76:7: error: 'virtual llvm::OverflowingBinaryOperator::~OverflowingBinaryOperator()' is implicitly deleted because the default definition would be ill-formed:
include/llvm/Operator.h:43:3: error: 'virtual llvm::Operator::~Operator()' is private
include/llvm/Operator.h:76:7: error: within this context

llvm-svn: 166611
2012-10-24 19:17:42 +00:00
Enrico Granata 7b3d205ee3 Changing the NSDate data formatter to use GetData().uint64[] instead of relying on SBValue.GetValueAsUnsigned() to reinterpret a double as a uint64_t
llvm-svn: 166610
2012-10-24 19:05:32 +00:00
Pete Cooper f4d5a7908d Improve DenseMap checks for power of 2 growth. Thanks for the tip Jakob
llvm-svn: 166609
2012-10-24 18:50:44 +00:00
Greg Clayton 1c22be6999 Added process and thread logging the python OperatingSystem plug-in.
llvm-svn: 166608
2012-10-24 18:39:14 +00:00
Micah Villmow bf3eeb2dfc Add some cleanup to the DataLayout changes requested by Chandler.
llvm-svn: 166607
2012-10-24 18:36:13 +00:00
Rafael Espindola c9d17591d9 Add a test showing that nodebug is accepted in methods too. Patch by
Paul Robinson.

llvm-svn: 166606
2012-10-24 18:34:26 +00:00
Argyrios Kyrtzidis e26c5571b2 [libclang] Add "-index-file-full" option that recursively indexes any imported
modules/PCH files.

llvm-svn: 166605
2012-10-24 18:29:15 +00:00
Greg Clayton 5db6b79955 Patch from Ashok Thirumurthi that enabled FPU registers for POSIX x86_64.
llvm-svn: 166604
2012-10-24 18:24:14 +00:00
Enrico Granata 7e137e3d8f <rdar://problem/12481949> Fixing SBValue.GetValueAsSigned() to do the right thing when dealing with a 32-bit negative value
llvm-svn: 166603
2012-10-24 18:14:21 +00:00
Nadav Rotem 18d0635339 Opt does not need to initialize the Asm printer/parser
llvm-svn: 166602
2012-10-24 17:55:53 +00:00
Douglas Gregor 360d3a5b06 Explicitly specify C++98 when building the C++ precompiled header for this test, so that the test will work on Windows.
llvm-svn: 166601
2012-10-24 17:49:01 +00:00
Chad Rosier 340c1ca0f3 [ms-inline asm] Add test cases for r166451.
llvm-svn: 166600
2012-10-24 17:48:01 +00:00
Douglas Gregor 1452ff155b Teach the preprocessor to hold onto the preprocessor options.
llvm-svn: 166599
2012-10-24 17:46:57 +00:00
Greg Clayton fb9c6b760b Cleanup some variable names to indicate auto pointers and also manager the llvm::Module memory more correctly.
llvm-svn: 166598
2012-10-24 17:37:53 +00:00
Micah Villmow 2db599e348 Delete the empty directory that was accidently added in 166578.
llvm-svn: 166597
2012-10-24 17:27:47 +00:00
Micah Villmow 51e7246cb4 Back out r166591, not sure why this made it through since I cancelled the command. Bleh, sorry about this!
llvm-svn: 166596
2012-10-24 17:25:11 +00:00
Nadav Rotem ac9a344915 Opt needs to initialize the different targets.
llvm-svn: 166595
2012-10-24 17:23:50 +00:00
Chad Rosier 42146d9a06 [ms-inline asm] Add test cases for r166592. The test cases only works if the
source operand is a register.

llvm-svn: 166594
2012-10-24 17:23:06 +00:00
Nadav Rotem 2289f2c932 Implement a basic VectorTargetTransformInfo interface to be used by the loop and bb vectorizers for modeling the cost of instructions.
llvm-svn: 166593
2012-10-24 17:22:41 +00:00
Chad Rosier 91c8266200 [ms-inline asm] Create a register operand, rather than a memory operand when we
see the offsetof operator.  Previously, we were matching something like MOVrm
in the front-end and later matching MOVrr in the back-end.  This change makes
things more consistent.  It also fixes cases where we can't match against a 
memory operand as the source (test cases coming).
Part of rdar://12470317

llvm-svn: 166592
2012-10-24 17:22:29 +00:00
Micah Villmow 6a8f3f9e20 Delete a directory that wasn't supposed to be checked in yet.
llvm-svn: 166591
2012-10-24 17:20:04 +00:00
Douglas Gregor e81699d938 Move PreprocessorOptions into the Lex library, and make it intrusively
reference-counted.

llvm-svn: 166587
2012-10-24 17:01:35 +00:00
Douglas Gregor 2d30236d16 (De-)serialize header search options.
llvm-svn: 166586
2012-10-24 16:50:34 +00:00
Douglas Gregor 40ba1a0191 Update unit tests for HeaderSearch change
llvm-svn: 166584
2012-10-24 16:24:38 +00:00
Douglas Gregor b85b9ccb76 Move HeaderSearchOptions into the Lex library, make it intrusively
reference-counted, and hold a reference to it in HeaderSearch.

llvm-svn: 166583
2012-10-24 16:19:39 +00:00
Douglas Gregor 5a2783d522 Undef SEMANTIC_VALUE_DIAGOPT appropriately
llvm-svn: 166579
2012-10-24 15:53:39 +00:00
Micah Villmow 12d9127833 Add in support for getIntPtrType to get the pointer type based on the address space.
This checkin also adds in some tests that utilize these paths and updates some of the
clients.

llvm-svn: 166578
2012-10-24 15:52:52 +00:00
Douglas Gregor c6317dbf5e (De-)serialize the file system options.
llvm-svn: 166577
2012-10-24 15:49:58 +00:00
Douglas Gregor 8263ffb268 Serialize DiagnosticOptions to the AST file.
llvm-svn: 166572
2012-10-24 15:17:15 +00:00
Mahesha S 3009374fa4 Removed an extra blank line.
llvm-svn: 166571
2012-10-24 15:12:40 +00:00
Manuel Klimek c268745011 Adds the possibility to run ASTMatchFinder over arbitrary AST nodes.
llvm-svn: 166567
2012-10-24 14:47:44 +00:00
Elena Demikhovsky d6afb03bc9 Special calling conventions for Intel OpenCL built-in library.
llvm-svn: 166566
2012-10-24 14:46:16 +00:00
Douglas Gregor 2b0a568cdc Add a simple test involving decltype on Objective-C properties and ivars
llvm-svn: 166562
2012-10-24 14:13:21 +00:00
Douglas Gregor 47c089624f Remove the HiddenWeakTemplateVTables CodeGen option. It's currently unused.
llvm-svn: 166561
2012-10-24 14:11:55 +00:00
Evgeniy Stepanov 04dbc2d022 Pass LLVM_ANDROID_TOOLCHAIN_DIR if set.
This lets one build ASan runtime for ARM/Android by running
make -C tools/clang/runtime/ \
  LLVM_ANDROID_TOOLCHAIN_DIR=/path/to/ndk/toolchain
in an existing build tree.

llvm-svn: 166560
2012-10-24 14:05:29 +00:00
Evgeniy Stepanov 64579da1a7 Build ASan runtime for ARM/Android.
llvm-svn: 166559
2012-10-24 14:03:41 +00:00
Alexey Samsonov 78d1210f38 Update docs about TSan availability in CMake build
llvm-svn: 166558
2012-10-24 13:34:53 +00:00
Alexey Samsonov 2e3c6e2e40 Fix some wordings in AddressSanitizer docs.
llvm-svn: 166557
2012-10-24 13:21:51 +00:00