summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* ARM assembler support for register name aliases.Jim Grosbach2011-12-081-2/+16
| | | | | | rdar://10550084 llvm-svn: 146170
* Added missing testcase from r145849. Thanks to Dave Blaikie for catching this.Lang Hames2011-12-081-0/+28
| | | | llvm-svn: 146169
* Make MachineInstr instruction property queries more flexible. This change allEvan Cheng2011-12-082-63/+68
| | | | | | | | clients to decide whether to look inside bundled instructions and whether the query should return true if any / all bundled instructions have the queried property. llvm-svn: 146168
* Add test for r146163.Evan Cheng2011-12-081-0/+3
| | | | llvm-svn: 146167
* [asan] fresh version of mach_override; added mach_override/README.txt. Patch ↵Kostya Serebryany2011-12-082-56/+147
| | | | | | by glider@google.com llvm-svn: 146166
* Implement umbrella directories for modules, which are similar toDouglas Gregor2011-12-0811-27/+179
| | | | | | | | | | | | | | | umbrella headers in the sense that all of the headers within that directory (and eventually its subdirectories) are considered to be part of the module with that umbrella directory. However, unlike umbrella headers, which are expected to include all of the headers within their subdirectories, Clang will automatically include all of the headers it finds in the named subdirectory. The intent here is to allow a module map to trivially turn a subdirectory into a module, where the module's structure can mimic the directory structure. llvm-svn: 146165
* Added the ability to dereference an Objective-C objectSean Callanan2011-12-083-8/+51
| | | | | | | | | | | | | pointer to make the result of an expression. LLDB now dumps the ivars of the Objective-C object and all of its parents. This just required fixing a bug where we didn't distinguish between Objective-C object pointers and regular C-style pointers. Also added a testcase to verify that this continues to work. llvm-svn: 146164
* Many of the SSE patterns should not be selected when AVX is available. This ↵Evan Cheng2011-12-084-4/+11
| | | | | | | | | | | | | | | | | | led to the following code in X86Subtarget.cpp if (HasAVX) X86SSELevel = NoMMXSSE; This is so patterns that are predicated on hasSSE3, etc. would not be selected when avx is available. Instead, the AVX variant is selected. However, this breaks instructions which do not have AVX variants. The right way to fix this is for the SSE but not-AVX patterns to predicate on something like hasSSE3() && !hasAVX(). Then we can take out the hack in X86Subtarget.cpp. Patterns which do not have AVX variants do not need to change. However, we need to audit all the patterns before we make the change. This patch is workaround that fixes one specific case, the prefetch instructions. rdar://10538297 llvm-svn: 146163
* [asan] update the soon-to-be-depricated asan makefile to use the new path ↵Kostya Serebryany2011-12-081-2/+5
| | | | | | for asan-rt (affects only linux) llvm-svn: 146162
* [asan] move build-time config options from makefile to source (otherwise we ↵Kostya Serebryany2011-12-084-14/+27
| | | | | | need config options in all makefiles) llvm-svn: 146161
* More refactoring of objective-C rewriter.Fariborz Jahanian2011-12-081-991/+1036
| | | | llvm-svn: 146160
* Tweak the syntax of umbrella headers, so that "umbrella" is treated asDouglas Gregor2011-12-085-107/+47
| | | | | | | | | | | a modifier for a header declarartion, e.g., umbrella header "headername" Collapse the umbrella-handling code in the parser into the header-handling code, so we don't duplicate the header-search logic. llvm-svn: 146159
* Within the module representation, generalize the notion of an umbrellaDouglas Gregor2011-12-086-34/+56
| | | | | | | | | | header to also support umbrella directories. The umbrella directory for an umbrella header is the directory in which the umbrella header resides. No functionality change yet, but it's coming. llvm-svn: 146158
* Revert r146143, "Fix bug 9905: Failure in code selection for llvm intrinsicsDaniel Dunbar2011-12-082-324/+0
| | | | | | | sqrt/exp (fix for FSQRT, FSIN, FCOS, FPOWI, FPOW, FLOG, FLOG2, FLOG10, FEXP, FEXP2).", it is failing tests. llvm-svn: 146157
* Keep track of import dependencies between submodules within the moduleDouglas Gregor2011-12-088-39/+52
| | | | | | | that's currently being built. This is important for supporting transitive dependencies ("export *" in the module map) completely. llvm-svn: 146156
* Decltype in non-pseudo (& non-dependent) dtor calls.David Blaikie2011-12-084-0/+53
| | | | llvm-svn: 146155
* Convert paths to native format before constructing aDouglas Gregor2011-12-081-5/+12
| | | | | | directory_iterator for them. llvm-svn: 146154
* Only do typo correction for implicit function decls whenHans Wennborg2011-12-083-32/+32
| | | | | | | | | | they are treated as errors. Doing typo correction when these are just warnings slows down the compilation of source which deliberately uses implicit function declarations. llvm-svn: 146153
* test/CodeGen/X86/vec_compare-2.ll: Add explicit -mtriple=i686-linux.NAKAMURA Takumi2011-12-081-1/+1
| | | | llvm-svn: 146152
* Src2 and src3 were accidentally swapped for the FMA4 rr patterns. Undo this ↵Jan Sjödin2011-12-082-14/+11
| | | | | | and fix the encoding. llvm-svn: 146151
* Fix a bug in the integer-promotion of bitcast operations on vector types.Nadav Rotem2011-12-084-2/+18
| | | | | | | We must not issue a bitcast operation for integer-promotion of vector types, because the location of the values in the vector may be different. llvm-svn: 146150
* ScheduleOptimizer: Do not tile bands with just one dimensionTobias Grosser2011-12-082-20/+19
| | | | llvm-svn: 146149
* libEnhancedDisassembly.a is gone from recent LLVM.Peter Collingbourne2011-12-081-1/+0
| | | | llvm-svn: 146148
* Fix: allow @protocol forward declarations inside @implementation-s.Erik Verbruggen2011-12-082-1/+53
| | | | llvm-svn: 146147
* Unbreak MSVC build.Francois Pichet2011-12-081-1/+1
| | | | llvm-svn: 146146
* Remove unused parameter from the LateParsedTemplatedFunction constructor.Francois Pichet2011-12-083-4/+3
| | | | llvm-svn: 146145
* Add an experimental MallocSizeofChecker, which reports inconsistenciesPeter Collingbourne2011-12-084-0/+240
| | | | | | | | between the casted type of the return value of a malloc/calloc/realloc call and the operand of any sizeof expressions contained within its argument(s). llvm-svn: 146144
* Fix bug 9905: Failure in code selection for llvm intrinsics sqrt/exp (fix ↵Stepan Dyatkovskiy2011-12-082-0/+324
| | | | | | for FSQRT, FSIN, FCOS, FPOWI, FPOW, FLOG, FLOG2, FLOG10, FEXP, FEXP2). llvm-svn: 146143
* Allow clang to find gcc libs on suse ppc64Hal Finkel2011-12-081-1/+14
| | | | llvm-svn: 146142
* Fixed an issue where we are asking to get the decl context for a functionGreg Clayton2011-12-082-20/+43
| | | | | | | | that is in a class from the expression parser, and it was causing an assertion. There is now a function that will correctly resolve a type even if it is in a class. llvm-svn: 146141
* Add a minimal unwind.h that knows how to forward to the system one in systemsRafael Espindola2011-12-082-0/+61
| | | | | | that have it in /usr/include (only OS X Lion so far). llvm-svn: 146140
* Use the real end of the decltype expression.David Blaikie2011-12-081-2/+1
| | | | llvm-svn: 146138
* MTCTR needs to be glued to BCTR so that CTR is not marked dead in MTCTR ↵Hal Finkel2011-12-081-1/+1
| | | | | | (another find by -verify-machineinstrs) llvm-svn: 146137
* Reverting r145899 as it breaks clang self-hostingPete Cooper2011-12-081-0/+66
| | | | llvm-svn: 146136
* <rdar://problem/10544202>Greg Clayton2011-12-084-35/+53
| | | | | | Fixed detection of AVX on darwin now that our kernel supports it. llvm-svn: 146135
* Get the bit-field offset & size for ObjC ivars that are bitfields.Jim Ingham2011-12-084-5/+41
| | | | | | <rdar://problem/10535460> lldb expression evaluation doesn't handle bit fields in ObjC classes properly llvm-svn: 146134
* Tightened up the variable list to deal withSean Callanan2011-12-081-0/+2
| | | | | | variables that might not have valid names. llvm-svn: 146133
* platform/clang_linux: Switch builtin and profile libraries to build using theDaniel Dunbar2011-12-081-10/+12
| | | | | | | | stub SDK. - This allows us to build both the m32 and m64 variants without worrying about whether or not the user has the headers for the alternate arch installed. llvm-svn: 146132
* SDKs: Sketch an initial stub SDK for Linux, I believe this suffices for buildingDaniel Dunbar2011-12-0810-0/+248
| | | | | | the main compiler-rt and profile modules, at least on x86. llvm-svn: 146131
* Added a new class called lldb_private::SymbolFileType which is designed toGreg Clayton2011-12-0813-156/+504
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | take a SymbolFile reference and a lldb::user_id_t and be used in objects which represent things in debug symbols that have types where we don't need to know the true type yet, such as in lldb_private::Variable objects. This allows us to defer resolving the type until something is used. More specifically this allows us to get 1000 local variables from the current function, and if the user types "frame variable argc", we end up _only_ resolving the type for "argc" and not for the 999 other local variables. We can expand the use of this as needed in the future. Modified the DWARFMappedHash class to be able to read the HashData that has more than just the DIE offset. It currently will read the atoms in the header definition and read the data correctly. Currently only the DIE offset and type flags are supported. This is needed for adding type flags to the .apple_types hash accelerator tables. Fixed a assertion crash that would happen if we have a variable that had a DW_AT_const_value instead of a location where "location.LocationContains_DW_OP_addr()" would end up asserting when it tried to parse the variable location as a DWARF opcode list. Decreased the amount of memory that LLDB would use when evaluating an expression by 3x - 4x for clang. There was a place in the namespace lookup code that was parsing all namespaces with a certain name in a DWARF file instead of stopping when it found the first match. This was causing all of the compile units with a matching namespace to get parsed into memory and causing unnecessary memory bloat. Improved "Target::EvaluateExpression(...)" to not try and find a variable when the expression contains characters that would certainly cause an expression to need to be evaluated by the debugger. llvm-svn: 146130
* Removed function information from the symbol tableSean Callanan2011-12-081-52/+3
| | | | | | | | | | for now to fix testcases. Once we have a valid use for the function information (i.e., once properties returning UnknownAnyTy are allowed, once we read return type information from the runtime, among other uses) I will re-enable this. llvm-svn: 146129
* Expose the DNBArchMachARM::DBG typedef, specify the type with theJason Molenda2011-12-082-2/+3
| | | | | | class scoping in DumpDBGState()'s definiton. llvm-svn: 146128
* [libclang] When doing clang_findReferencesInFile, make sure we don't crashArgyrios Kyrtzidis2011-12-081-3/+15
| | | | | | | | if we come up against a null Decl. No test case unfortunately. rdar://10457799. llvm-svn: 146127
* Don't crash due to not checking log shared pointer.Greg Clayton2011-12-081-1/+2
| | | | llvm-svn: 146126
* ARM NEON two-operand aliases for VSHL(immediate).Jim Grosbach2011-12-084-0/+55
| | | | llvm-svn: 146125
* Drop the HasInlineAsm flag.Jakob Stoklund Olesen2011-12-081-8/+2
| | | | | | | | | | It is not used any more. We are tracking inline assembly misalignments directly through the BBInfo.Unalign and KnownBits fields. A simple conservative size estimate is not good enough since it can cause alignment padding to be underestimated. llvm-svn: 146124
* ARM NEON two-operand aliases for VSHL(register).Jim Grosbach2011-12-082-0/+76
| | | | llvm-svn: 146123
* Minor cleanup. Avoid redundant getTriple() calls.Bob Wilson2011-12-081-2/+1
| | | | llvm-svn: 146122
* Simplify offset verification.Jakob Stoklund Olesen2011-12-081-9/+4
| | | | llvm-svn: 146121
* Fix copy/past-o.Jim Grosbach2011-12-081-2/+2
| | | | llvm-svn: 146120
OpenPOWER on IntegriCloud