summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Reduce test case, smaller is better.Devang Patel2011-02-071-789/+33
| | | | llvm-svn: 125019
* Namespace patch for linux builds from Jai Menon.Greg Clayton2011-02-071-1/+2
| | | | llvm-svn: 125016
* Added a "ArchSpec::SetElfArch()" that was removed by a previous patch andGreg Clayton2011-02-072-1/+15
| | | | | | | avoid using RTLD_FIRST with dlopen to keep things compatible with other *NIX variants. Patch from Jai Menon. llvm-svn: 125015
* Add codegen support for using post-increment NEON load/store instructions.Bob Wilson2011-02-0714-145/+927
| | | | | | | | The vld1-lane, vld1-dup and vst1-lane instructions do not yet support using post-increment versions, but all the rest of the NEON load/store instructions should be handled now. llvm-svn: 125014
* Change VLD3/4 and VST3/4 for quad registers to not update the address register.Bob Wilson2011-02-073-65/+89
| | | | | | | | | | | | These operations are expanded to pairs of loads or stores, and the first one uses the address register update to produce the address for the second one. So far, the second load/store has also updated the address register, just for convenience, since that output has never been used. In anticipation of actually supporting post-increment updates for these operations, this changes the non-updating operations to use a non-updating load/store for the second instruction. llvm-svn: 125013
* Fix some NEON instruction itineraries.Bob Wilson2011-02-071-12/+16
| | | | llvm-svn: 125012
* Fix a comment: addrmode6 no longer includes the optional writeback flag.Bob Wilson2011-02-071-1/+1
| | | | llvm-svn: 125011
* Remove inaccurate comments: so_imm and t2_so_imm operands are not encodedBob Wilson2011-02-072-8/+2
| | | | | | until the instructions are emitted or printed. llvm-svn: 125010
* Move code for OffsetCompare struct closer to where it is used.Bob Wilson2011-02-071-11/+11
| | | | llvm-svn: 125009
* Posix compatability patch from Jai Menon to avoid uses dirent struct membersGreg Clayton2011-02-071-2/+5
| | | | | | | that aren't always available (sometimes d_namlen or d_reclen). Now strlen is used to avoid such issues. llvm-svn: 125008
* Move uninitialized variable checking back under ↵Ted Kremenek2011-02-074-5/+5
| | | | | | -Wuninitialized-experimental. It is clear from user feedback that this warning is not quite ready. llvm-svn: 125007
* implement .ll and .bc support for nsw/nuw on shl and exact on lshr/ashr.Chris Lattner2011-02-078-211/+239
| | | | | | Factor some code better. llvm-svn: 125006
* A few more tweaks to the blocks AST representation: John McCall2011-02-0734-1187/+1467
| | | | | | | | | | | | | | | | | - BlockDeclRefExprs always store VarDecls - BDREs no longer store copy expressions - BlockDecls now store a list of captured variables, information about how they're captured, and a copy expression if necessary With that in hand, change IR generation to use the captures data in blocks instead of walking the block independently. Additionally, optimize block layout by emitting fields in descending alignment order, with a heuristic for filling in words when alignment of the end of the block header is insufficient for the most aligned field. llvm-svn: 125005
* Add an m_Div pattern for matching either a udiv or an sdiv and use itDuncan Sands2011-02-072-4/+36
| | | | | | to simplify the "(X/Y)*Y->X when the division is exact" transform. llvm-svn: 125004
* Add IRBuilder methods for creating an exact udiv, like for exact sdiv.Duncan Sands2011-02-076-1/+37
| | | | llvm-svn: 125002
* Install only *.cmake files. Don't install .svn directory.Oscar Fuentes2011-02-071-1/+2
| | | | | | Fixes PR9159. llvm-svn: 125001
* pre/post ++/-- for AltiVec vectors. (with builtins-ppc-altivec.c failure fixed)Anton Yartsev2011-02-074-24/+82
| | | | llvm-svn: 125000
* Teach ARM/MC/ELF about gcc compatible reloc output to get past odd linkageJason W Kim2011-02-074-3/+265
| | | | | | | | | | | | | | | | | | failures with relocations. The code committed is a first cut at compatibility for emitted relocations in ELF .o. Why do this? because existing ARM tools like emitting relocs symbols as explicit relocations, not as section-offset relocs. Result is that with these changes, 1) relocs are now substantially identical what to gcc outputs. 2) larger apps (including many spec2k tests) compile, cross-link, and pass Added reminder fixme to tests for future conversion to .s form. llvm-svn: 124996
* Rework some .ARM.attribute work for improved gcc compatibility.Jason W Kim2011-02-074-30/+119
| | | | | | | Unified EmitTextAttribute for both Asm and Obj emission (.cpu only) Added necessary cortex-A8 related attrs for codegen compat tests. llvm-svn: 124995
* teach instsimplify to transform (X / Y) * Y to XChris Lattner2011-02-062-3/+25
| | | | | | when the div is an exact udiv. llvm-svn: 124994
* rename test.Chris Lattner2011-02-061-0/+0
| | | | llvm-svn: 124993
* enhance vmcore to know that udiv's can be exact, and add a trivialChris Lattner2011-02-0614-32/+110
| | | | | | | | instcombine xform to exercise this. Nothing forms exact udivs yet though. This is progress on PR8862 llvm-svn: 124992
* Remove premature optimization that avoided calculating argument weightsEric Christopher2011-02-061-5/+0
| | | | | | | | | if we weren't going to inline the function. The rest of the code using this was removed. Fixes PR9154. llvm-svn: 124991
* Simplify test, as suggested by Chris.Anders Carlsson2011-02-061-6/+2
| | | | llvm-svn: 124990
* Remove a virtual inheritance case that clang can devirtualize fully now.Anders Carlsson2011-02-061-21/+0
| | | | llvm-svn: 124989
* Add another test that we can fully devirtualize now.Anders Carlsson2011-02-061-0/+25
| | | | llvm-svn: 124988
* When loading from a constant, fold inttoptr if the integer type and the ↵Anders Carlsson2011-02-062-0/+28
| | | | | | resulting pointer type both have the same size. llvm-svn: 124987
* Fix self-host; if a thunk already exists and has available_externally ↵Anders Carlsson2011-02-062-2/+25
| | | | | | linkage, we should change its linkage instead of asserting. llvm-svn: 124986
* Don't define NDEBUG on MSVC_IDE and XCode builds. Fixes PR9155.Oscar Fuentes2011-02-061-1/+3
| | | | llvm-svn: 124985
* When building with optimizations, emit thunks with available_externally ↵Anders Carlsson2011-02-063-6/+113
| | | | | | linkage so devirtualized function calls can also be de-thunked. llvm-svn: 124984
* Simplify thunks code.Anders Carlsson2011-02-062-9/+7
| | | | llvm-svn: 124983
* CLANG_BINARY_DIR is not the same thing as LLVM_BINARY_DIR when ClangOscar Fuentes2011-02-061-2/+2
| | | | | | is built as part of LLVM. llvm-svn: 124982
* add some missing builtins.Chris Lattner2011-02-061-0/+6
| | | | llvm-svn: 124981
* Simplify away redundant test, and document what's going on.Nick Lewycky2011-02-061-2/+5
| | | | llvm-svn: 124977
* Remove specialized comparison of InlineAsm objects. They're uniqued on creationNick Lewycky2011-02-061-6/+2
| | | | | | now, and this wasn't comparing some of their relevant bits anyhow. llvm-svn: 124976
* Support running tests from the VS IDE and XCode.Oscar Fuentes2011-02-051-2/+4
| | | | | | Untested, but should work :) llvm-svn: 124975
* Remove the clang++ symlink with `make clean'.Oscar Fuentes2011-02-051-2/+5
| | | | llvm-svn: 124974
* Add a __has_feature check for default template arguments in functionDouglas Gregor2011-02-053-0/+15
| | | | | | templates, a C++0x feature. llvm-svn: 124973
* CMake: libclang shall be named libclang.so, not liblibclang.so.Oscar Fuentes2011-02-051-0/+1
| | | | | | | It is not possible to simply change that target name to `clang' because we already have one. llvm-svn: 124972
* Improve our uniquing of file entries when files are re-saved or areDouglas Gregor2011-02-059-45/+91
| | | | | | | | | | | | | | overridden via remapping. Thus, when we create a "virtual" file in the file manager, we still stat() the real file that lives behind it so that we can provide proper uniquing based on inodes. This helps keep the file manager much more consistent. To take advantage of this when reparsing files in libclang, we disable the use of the stat() cache when reparsing or performing code completion, since the stat() cache is very likely to be out of date in this use case. llvm-svn: 124971
* Basic implementation of inherited constructors. Only generates declarations, ↵Sebastian Redl2011-02-0511-21/+421
| | | | | | and probably only works for very basic use cases. llvm-svn: 124970
* Support `make clang-test' when Clang is compiled outside of LLVM.Oscar Fuentes2011-02-051-5/+11
| | | | | | | | | | | This may not work on build platforms that place the binaries on special folders ($build_dir/bin/Release/) such as the VS IDE and XCode. For fixing this it is necessary to add a lit.py configuration option for saying where the Clang binaries are, and apply to that path the same magit that is used with the path to the LLVM tools binary directory. Doing this requires a bit of autoconf work. llvm-svn: 124969
* Moved more stuff to HandleLLVMOptions.cmakeOscar Fuentes2011-02-052-21/+21
| | | | llvm-svn: 124968
* Pass a 'ForVTable' flag to GetAddrOfThunk and pass it along to ↵Anders Carlsson2011-02-053-6/+34
| | | | | | | | GetOrCreateLLVMFunction so that we won't assert when building a thunk for an implicit virtual member function that is not marked used. llvm-svn: 124967
* Fix another warning.Anders Carlsson2011-02-051-1/+1
| | | | llvm-svn: 124961
* Fix a clang warning.Anders Carlsson2011-02-051-1/+2
| | | | llvm-svn: 124960
* python bindings: Add support for different kind of completion chunksTobias Grosser2011-02-051-6/+81
| | | | llvm-svn: 124959
* python bindings: Get the string representation of a CompletionChunkTobias Grosser2011-02-051-9/+84
| | | | llvm-svn: 124958
* python bindings: Add CodeCompletionResultsTobias Grosser2011-02-051-1/+94
| | | | llvm-svn: 124957
* python bindings: Add support for translationUnit.reparse().Tobias Grosser2011-02-052-6/+47
| | | | | | | | This is the first step to make the clang_complete vim plugin work with libclang. Reparsing improves parsing time from 0.8 to 0.25 secs for one of my LLVM .cpp files. llvm-svn: 124956
OpenPOWER on IntegriCloud