summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* change the various getFile routines to use StringRef as their implementation ↵Chris Lattner2010-11-212-44/+41
| | | | | | form. llvm-svn: 119934
* apply Dan's fix for PR8268 which allows constant folding to handle indexes overChris Lattner2010-11-211-7/+15
| | | | | | | | | | | zero sized elements. This allows us to compile: #include <string> void foo() { std::string s; } into an empty function. llvm-svn: 119933
* add some helper methods for asmprinter flags, from PR8417Chris Lattner2010-11-211-0/+10
| | | | llvm-svn: 119932
* implement PR8524, apparently mainline gas accepts movq as an alias for movdChris Lattner2010-11-212-0/+11
| | | | | | when transfering between i64 gprs and mmx regs. llvm-svn: 119931
* rework some DSE paths to use the newly-public "getPointerDependencyFrom"Chris Lattner2010-11-211-46/+37
| | | | | | | method in MemDep instead of inserting an instruction, doing a query, then removing it. Neither operation is effectively cached. llvm-svn: 119930
* the getLocationForSource/Dest methods can be static.Chris Lattner2010-11-211-2/+2
| | | | llvm-svn: 119929
* add "getLocation" method to AliasAnalysis for getting the source andChris Lattner2010-11-212-0/+26
| | | | | | | | destination location of a memcpy/memmove. I'm not clear about whether TBAA works on these, so I'm leaving it out for now. Dan, please revisit this when convenient. llvm-svn: 119928
* implement PR8576, deleting dead stores with intervening may-alias stores.Chris Lattner2010-11-214-6/+42
| | | | llvm-svn: 119927
* file checkizeChris Lattner2010-11-211-3/+6
| | | | llvm-svn: 119926
* add some random notes.Chris Lattner2010-11-211-2/+33
| | | | llvm-svn: 119925
* Fix warning: enumeration value 'IndirectField' not handled in switch.Francois Pichet2010-11-211-0/+1
| | | | llvm-svn: 119924
* Use by-name rather than by-order operand matching for some NEON encodings.Owen Anderson2010-11-211-34/+34
| | | | llvm-svn: 119923
* optimize:Chris Lattner2010-11-213-10/+110
| | | | | | | | | void a(int x) { if (((1<<x)&8)==0) b(); } into "x != 3", which occurs over 100 times in 403.gcc but in no other program in llvm-test. llvm-svn: 119922
* Compilation error: remove extra comma.Francois Pichet2010-11-211-1/+1
| | | | llvm-svn: 119921
* tail calls on x86 are implemented.Chris Lattner2010-11-211-16/+0
| | | | llvm-svn: 119920
* Major anonymous union/struct redesign.Francois Pichet2010-11-2117-117/+247
| | | | | | | | | | | A new AST node is introduced: def IndirectField : DDecl<Value>; IndirectFields are injected into the anonymous's parent scope and chain back to the original field. Name lookup for anonymous entities now result in an IndirectFieldDecl instead of a FieldDecl. There is no functionality change, the code generated should be the same. llvm-svn: 119919
* BR_JTadd is ARM-only, so use the proper pseudo class to get the predicate.Jim Grosbach2010-11-211-1/+1
| | | | llvm-svn: 119918
* Handle PCRel relocations with absolute values. Fixes PR8656.Rafael Espindola2010-11-212-9/+30
| | | | llvm-svn: 119917
* Implement PR8644: forwarding a memcpy value to a byval,Chris Lattner2010-11-214-51/+144
| | | | | | | | | | | | allowing the memcpy to be eliminated. Unfortunately, the requirements on byval's without explicit alignment are really weak and impossible to predict in the mid-level optimizer, so this doesn't kick in much with current frontends. The fix is to change clang to set alignment on all byval arguments. llvm-svn: 119916
* Forward the -fno-elide-constructor argument to clang -cc1. Fixes PR8652.Anders Carlsson2010-11-213-0/+9
| | | | llvm-svn: 119915
* a byval argument without an align can have an arbitrary alignmentChris Lattner2010-11-201-6/+10
| | | | | | requirement on the input pointer. llvm-svn: 119914
* A few more thumb instruction MC encodings.Bill Wendling2010-11-201-16/+38
| | | | llvm-svn: 119913
* Rewrite address handling to use a structure with all the possible addressEric Christopher2010-11-201-11/+76
| | | | | | mode variables. Handle frame indexes in load/store and allocas again. llvm-svn: 119912
* STRH only needs the additional operand, not t2STRH. Also invert conditionalEric Christopher2010-11-201-9/+5
| | | | | | to match the one from the load emitter above. llvm-svn: 119911
* When we resolve a forward declaration type, be sure to put it into the ↵Greg Clayton2010-11-201-0/+6
| | | | | | m_die_to_type map so we don't assert later when someone tries to resolve the type. llvm-svn: 119910
* N3191: C++ Timeout SpecificationHoward Hinnant2010-11-2023-63/+63
| | | | llvm-svn: 119909
* Simplify code. No change in functionality.Benjamin Kramer2010-11-205-15/+11
| | | | llvm-svn: 119908
* Test commit: Fix two -Asserts mode warnings in StringMap.h.Frits van Bommel2010-11-201-0/+2
| | | | llvm-svn: 119907
* N3123Howard Hinnant2010-11-204-10/+4
| | | | llvm-svn: 119906
* Make this compile on case-sensitive file systemswAnton Korobeynikov2010-11-201-2/+2
| | | | llvm-svn: 119905
* Move some more hooks to TargetFrameInfoAnton Korobeynikov2010-11-2018-192/+201
| | | | llvm-svn: 119904
* Silence Release build warnings about unused functions.Benjamin Kramer2010-11-201-0/+2
| | | | llvm-svn: 119903
* Disable warning C4291 on MSVC. Caused because class AttributeList provides a ↵Francois Pichet2010-11-201-1/+1
| | | | | | non implemented operator delete without a corresponding new. llvm-svn: 119902
* On X86, MEMBARRIER, MFENCE, SFENCE, LFENCE are not target memory intrinsics,Duncan Sands2010-11-203-18/+52
| | | | | | | | | | | so don't claim they are. They are allocated using DAG.getNode, so attempts to access MemSDNode fields results in reading off the end of the allocated memory. This fixes crashes with "llc -debug" due to debug code trying to print MemSDNode fields for these barrier nodes (since the crashes are not deterministic, use valgrind to see this). Add some nasty checking to try to catch this kind of thing in the future. llvm-svn: 119901
* Add comments.Zhongxing Xu2010-11-201-1/+2
| | | | llvm-svn: 119900
* Fix a typo in EnvironmentManager::bindExprAndLocation(). Reviewed by kremenek.Zhanyong Wan2010-11-201-1/+2
| | | | llvm-svn: 119899
* Removing the useless test that I added recently. It was meant as an example, ↵Andrew Trick2010-11-202-35/+6
| | | | | | but not complicated enough to merit another test. llvm-svn: 119898
* Handle CFGAutomaticObjDtor. Zhongxing Xu2010-11-205-1/+55
| | | | llvm-svn: 119897
* RABasic fix. Regalloc is responsible for updating block live ins.Andrew Trick2010-11-201-0/+30
| | | | llvm-svn: 119896
* Whitespace.Andrew Trick2010-11-201-20/+20
| | | | llvm-svn: 119895
* Removed a stray dump() that made it into top-of-tree.Sean Callanan2010-11-201-2/+0
| | | | llvm-svn: 119890
* Made GetVariableValue() more robust in the faceSean Callanan2010-11-201-0/+11
| | | | | | | | of failures in the AST importer. Also ensured that a variable will not be blindly added if GetVariableValue() returns an error. llvm-svn: 119889
* Removed a stray dump().Sean Callanan2010-11-201-3/+1
| | | | llvm-svn: 119888
* Revert r119838 "Don't warn for empty 'if' body if there is a macro that ↵Argyrios Kyrtzidis2010-11-2012-74/+50
| | | | | | | | | | expands to nothing" and use a better and more general approach, where NullStmt has a flag to indicate whether it was preceded by an empty macro. Thanks to Abramo Bagnara for the hint! llvm-svn: 119887
* A bundle of whitespace changes, separated out from the functional changes.Nick Lewycky2010-11-206-24/+22
| | | | llvm-svn: 119886
* Change the DWARFExpression::Evaluate methods to take an optionalJason Molenda2010-11-208-41/+175
| | | | | | | | | | | | | | RegisterContext* - normally this is retrieved from the ExecutionContext's StackFrame but when we need to evaluate an expression while creating the stack frame list this can be a little tricky. Add DW_OP_deref_size, needed for the _sigtramp FDE expression. Add support for processing DWARF expressions in RegisterContextLLDB. Update callers to DWARFExpression::Evaluate. llvm-svn: 119885
* Fix old GCC build error.Jakob Stoklund Olesen2010-11-201-1/+1
| | | | llvm-svn: 119884
* Add more Thumb add instruction encodings.Bill Wendling2010-11-201-12/+47
| | | | llvm-svn: 119883
* Add Thumb encodings for some add instructions.Bill Wendling2010-11-201-6/+26
| | | | llvm-svn: 119882
* Add more encodings for Thumb instructions.Bill Wendling2010-11-201-15/+30
| | | | llvm-svn: 119881
OpenPOWER on IntegriCloud