summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* <rdar://problem/13021266>Enrico Granata2013-01-166-0/+80
| | | | | | | Adding FindFirstGlobalVariable to SBModule and SBTarget These calls work like FindGlobalVariables but they only return the first match found and so they can return an SBValue instead of an SBValueList for added convenience of use llvm-svn: 172636
* Teach global selector lookup to ignore hidden methods, which occurDouglas Gregor2013-01-165-47/+97
| | | | | | | when the methods are declared in a submodule that has not yet been imported. Part of <rdar://problem/10634711>. llvm-svn: 172635
* [Linker] Change module flag linking to be more extensible.Daniel Dunbar2013-01-165-139/+118
| | | | | | | | | | - Instead of computing a bunch of buckets of different flag types, just do an incremental link resolving conflicts as they arise. - This also has the advantage of making the link result deterministic and not dependent on map iteration order. llvm-svn: 172634
* Greg created a new API on SBProcess to get an ID that is guaranteed to be ↵Enrico Granata2013-01-161-1/+1
| | | | | | | | unique even in situations where underlying platforms would actually duplicate or hardcode PIDs The Python data formatters use a per-process cache that was previously keying off the PID. Moving that to be based on this new notion of unique ID. llvm-svn: 172633
* [libclang] In clang_reparseTranslationUnit_Impl, move the check whether TU isArgyrios Kyrtzidis2013-01-161-3/+2
| | | | | | null before using it. llvm-svn: 172632
* Make a few tests optimization-proof. These tests were failing under -O3 ↵Howard Hinnant2013-01-164-4/+4
| | | | | | because the optimizer was eliminating the call to new. llvm-svn: 172631
* We want the dwarf AT_producer for assembly source files to match clang'sKevin Enderby2013-01-164-3/+35
| | | | | | | | | | | | | | | AT_producer. Which includes clang's version information so we can tell which version of the compiler was used. This is the first of two steps to allow us to do that. This is the llvm-mc change to provide a method to set the AT_producer string. The second step, coming soon to a clang near you, will have the clang driver pass the value of getClangFullVersion() via an flag when invoking the integrated assembler on assembly source files. rdar://12955296 llvm-svn: 172630
* [PCH/Modules] The iterator may become invalidated because a new macro can be ↵Argyrios Kyrtzidis2013-01-161-2/+4
| | | | | | | | | | added while deserializing a macro, make sure to copy/move what we need from it. Fixes clang-x86_64-debian-fast bot. llvm-svn: 172629
* <rdar://problem/13009943>Greg Clayton2013-01-165-4/+73
| | | | | | | | | | Added a unique integer identifier to processes. Some systems, like JTAG or other simulators, might always assign the same process ID (pid) to the processes that are being debugged. In order for scripts and the APIs to uniquely identify the processes, there needs to be another ID. Now the SBProcess class has: uint32_t SBProcess::GetUniqueID(); This integer ID will help to truly uniquely identify a process and help with appropriate caching that can be associated with a SBProcess object. llvm-svn: 172628
* Introduce llvm::sys::getProcessTriple() function.Peter Collingbourne2013-01-1668-81/+95
| | | | | | | | | | | | | | | | | | | | | | | | | | | In r143502, we renamed getHostTriple() to getDefaultTargetTriple() as part of work to allow the user to supply a different default target triple at configure time. This change also affected the JIT. However, it is inappropriate to use the default target triple in the JIT in most circumstances because this will not necessarily match the current architecture used by the process, leading to illegal instruction and other such errors at run time. Introduce the getProcessTriple() function for use in the JIT and its clients, and cause the JIT to use it. On architectures with a single bitness, the host and process triples are identical. On other architectures, the host triple represents the architecture of the host CPU, while the process triple represents the architecture used by the host CPU to interpret machine code within the current process. For example, when executing 32-bit code on a 64-bit Linux machine, the host triple may be 'x86_64-unknown-linux-gnu', while the process triple may be 'i386-unknown-linux-gnu'. This fixes JIT for the 32-on-64-bit (and vice versa) build on non-Apple platforms. Differential Revision: http://llvm-reviews.chandlerc.com/D254 llvm-svn: 172627
* First step in implementation of mips16 and nomips16 attributes.Reed Kotler2013-01-165-0/+102
| | | | | | Waiting for new llvm attribute code for the next step. llvm-svn: 172626
* [libclang] In clang_getCursorType, don't crash if the translation unit is notArgyrios Kyrtzidis2013-01-161-0/+3
| | | | | | set on the cursor; return a null type in such a case. llvm-svn: 172625
* Fix a bug where we would move a following line into a comment.Daniel Jasper2013-01-162-1/+6
| | | | | | | | | | | Before: Constructor() : a(a), // comment a(a) {} After: Constructor() : a(a), // comment a(a) {} Needed this as a quick fix. Will add more tests for this in a future commit. llvm-svn: 172624
* [preprocessor] Call the MacroUndefined callback even when the macro was not ↵Argyrios Kyrtzidis2013-01-162-5/+8
| | | | | | | | defined. Patch by Enea Zaffanella! llvm-svn: 172623
* Replace virtual hasFixups with explicit fragment type checksEli Bendersky2013-01-161-9/+2
| | | | llvm-svn: 172622
* Fix parsing error in conditional expressions.Daniel Jasper2013-01-162-4/+6
| | | | | | | | | | | | | We used to incorrectly parse aaaaaa ? aaaaaa(aaaaaa) : aaaaaaaa; Due to an l_paren being followed by a colon, we assumed it to be part of a constructor initializer. Thus, we never found the colon belonging to the conditional expression, marked the line as bing incorrect and did not format it. llvm-svn: 172621
* [PCH/Modules] Change how macro [re]definitions are de/serialized.Argyrios Kyrtzidis2013-01-167-74/+76
| | | | | | | | | | | | | | | | | | Previously we would serialize the macro redefinitions as a list, part of the identifier, and try to chain them together across modules individually without having the info that they were already chained at definition time. Change this by serializing the macro redefinition chain and then try to synthesize the chain parts across modules. This allows us to correctly pinpoint when 2 different definitions are ambiguous because they came from unrelated modules. Fixes bogus "ambiguous expansion of macro" warning when a macro in a PCH is redefined without undef'ing it first. rdar://13016031 llvm-svn: 172620
* Improve understanding of unary operators.Daniel Jasper2013-01-162-1/+6
| | | | | | Before: int x = ** a; After: int x = **a; llvm-svn: 172619
* Disable inlining of short ifs in Google style.Daniel Jasper2013-01-162-17/+25
| | | | | | | | | Various reasons seem to speak against it, so I am disabling this for now. Changed tests to still test this option. llvm-svn: 172618
* Add option to avoid "bin-packing" of parameters.Daniel Jasper2013-01-163-30/+102
| | | | | | | | | | | | | | | | "Bin-packing" here means allowing multiple parameters on one line, if a function call/declaration is spread over multiple lines. This is required by the Chromium style guide and probably desired for the Google style guide. Not making changes to LLVM style as I don't have enough data. With this enabled, we format stuff like: aaaaaaaaaaaaaaa(aaaaaaaaaa, aaaaaaaaaa, aaaaaaaaaaaaaaaaaaaaaaa).aaaaaaaaaaaaaaaaaa(); llvm-svn: 172617
* Add debugging support for split penalties.Manuel Klimek2013-01-163-3/+50
| | | | llvm-svn: 172616
* Allow vectors in CreatePointerCast of constants.Evgeniy Stepanov2013-01-162-3/+34
| | | | llvm-svn: 172615
* A test for r172535.Evgeniy Stepanov2013-01-161-0/+8
| | | | llvm-svn: 172614
* asan: fix ARM buildDmitry Vyukov2013-01-161-1/+6
| | | | llvm-svn: 172613
* Remove unused leftover header (it moved to llvm/IR).Benjamin Kramer2013-01-161-399/+0
| | | | llvm-svn: 172612
* Move test that depends on the x86 target into a target-specific directory.Benjamin Kramer2013-01-161-0/+0
| | | | | | Should fix the arm buildbot (which only builds the arm target). llvm-svn: 172611
* ASan: wrap mapping scale and offset in a struct and make it a member of ASan ↵Alexey Samsonov2013-01-162-51/+119
| | | | | | passes. Add test for non-default mapping scale and offset. No functionality change llvm-svn: 172610
* Remove triple from this test, it makes it fail when X86 TTI is missing.Benjamin Kramer2013-01-161-4/+1
| | | | | | Without a triple opt falls back to NoTTI which comes closer to LSR's pre-TTI behavior. llvm-svn: 172609
* Use standard llvm Debug.h support for debugging output.Manuel Klimek2013-01-161-17/+16
| | | | | | | | Leave a quick "// Uncomment this." hint to enable the debug output in tests. FIXME: figure out whether we want to enable debug command line handling for all tests. llvm-svn: 172608
* Clang Format: A couple of tests for the trailing stuff caseAlexander Kornienko2013-01-161-0/+6
| | | | llvm-svn: 172607
* Clang Format: Handle missing semicolonAlexander Kornienko2013-01-162-3/+24
| | | | llvm-svn: 172606
* Fix uninitialized bool flag access in SanitizerArgs parserAlexey Samsonov2013-01-162-2/+5
| | | | llvm-svn: 172605
* Calculate the total length of a line up to each token up front.Daniel Jasper2013-01-162-57/+34
| | | | | | | | | | This makes the tedious fitsIntoLimit() method unnecessary and I can replace one hack (constructor initializers) by a slightly better hack. Furthermore, this will enable calculating whether a certain part of a line fits into the limit for future modifications. llvm-svn: 172604
* [asan] asan_allocator2: fix the memalign handling (clear the first word of ↵Kostya Serebryany2013-01-161-0/+2
| | | | | | allocated chunk in case there is an old memalign magic) llvm-svn: 172603
* Change the datastructure for UnwrappedLines.Daniel Jasper2013-01-163-62/+43
| | | | | | | | | | | | | | It was quite convoluted leading to us accidentally introducing O(N^2) complexity while copying from UnwrappedLine to AnnotatedLine. We might still want to improve the datastructure in AnnotatedLine (most importantly not put them in a vector where they need to be copied on vector resizing but that will be done as a follow-up. This fixes most of the regression in llvm.org/PR14959. No formatting changes intended. llvm-svn: 172602
* Never merge < and ::, as it produces different tokens.Daniel Jasper2013-01-162-4/+8
| | | | | | Before: vector<::Type> t; After: vector< ::Type> t; llvm-svn: 172601
* Remove errors were if statements were incorrectly put on a single line.Daniel Jasper2013-01-162-1/+18
| | | | | | | Before: if (a) // This comment confused clang-format f(); After: if (a) // No more confusion f(); llvm-svn: 172600
* [ObjCARC] Turn off ignoring unwind edges in ObjCARC when ↵Michael Gottesman2013-01-161-33/+0
| | | | | | | | | | | | | -fno-objc-arc-exception is enabled due to it's affect on correctness. Specifically according to the semantics of ARC -fno-objc-arc-exception simply states that it is expected that the unwind path out of a call *MAY* not release objects. Thus we can have the situation where a release gets moved into a catch block which we ignore when we remove a retain/release pair resulting in (even though we assume the program is exiting anyways) the cleanup code path potentially blowing up before program exit. llvm-svn: 172599
* clang/test/Driver/darwin-sdkroot.c: Suppress this on msys bash, to introduce ↵NAKAMURA Takumi2013-01-162-0/+7
| | | | | | | | the feature "shell-preserves-root". MSYS transforms '/' to 'X:/mingwroot/'. llvm-svn: 172598
* [analyzer] Add an annotation to allow suppression of direct ivarAnna Zaks2013-01-162-2/+24
| | | | | | assignment llvm-svn: 172597
* [analyzer] Fix warning typo.Anna Zaks2013-01-162-6/+6
| | | | llvm-svn: 172596
* [analyzer] Refactor: parameter rename.Anna Zaks2013-01-163-5/+5
| | | | llvm-svn: 172595
* reverting 172579Jack Carter2013-01-167-44/+2
| | | | llvm-svn: 172594
* SDKROOT should only be unset/cleared for ARM builds. The first fix by Bob ↵Greg Clayton2013-01-161-5/+14
| | | | | | Wilson removed it for ARM for both configure and make, but only unset it for desktop configure, not for the make. My next fix unset/cleared it all the time. This fix only unset/clears it for ARM builds. llvm-svn: 172593
* Add -fmodules-autolink/-fno-modules-autolink (defaults to on) so thatDouglas Gregor2013-01-167-3/+31
| | | | | | users can explicitly enable/disable modules autolinking. llvm-svn: 172592
* Collect both normal and static data members of a class in sourceEric Christopher2013-01-165-111/+178
| | | | | | | | | | order. Describe static data members to metadata using new interfaces. Part of PR14471. Patch by Paul Robinson! llvm-svn: 172591
* Define metadata interfaces for describing a static data memberEric Christopher2013-01-166-49/+162
| | | | | | | | | | | of a class. Emit static data member declarations and definitions through correctly. Part of PR14471. Patch by Paul Robinson! llvm-svn: 172590
* Add a test for static member debug information.Eric Christopher2013-01-161-0/+35
| | | | | | | | Part of PR14471. Patch by Paul Robinson. llvm-svn: 172589
* Documentation: fix typoDmitri Gribenko2013-01-161-1/+1
| | | | llvm-svn: 172588
* Document the redeclaration and overriding restrictions on theDouglas Gregor2013-01-161-1/+28
| | | | | | availability attribute. llvm-svn: 172587
OpenPOWER on IntegriCloud