- Dec 12, 2013
-
-
Alp Toker authored
The old AddFixedStringToRegEx() it was based on got away with this for the longest time, but the problem became easy to spot after the cleanup in r197096. Also add a quick unit test to cover regex escaping. llvm-svn: 197121
-
Richard Smith authored
Update user manual to note that implementation for C++11 and C++1y is complete, and fix a bunch of other issues here. llvm-svn: 197120
-
Reed Kotler authored
I don't know why this did not show up earlier. This code has been around for ages. llvm-svn: 197119
-
Hans Wennborg authored
llvm-svn: 197116
-
NAKAMURA Takumi authored
llvm-svn: 197114
-
Kevin Qin authored
In regular expression, [0-31]+ equals to [0-3]+, not the number from 0 to 31. So change it to [0-9]+. llvm-svn: 197113
-
Kevin Qin authored
In regular expression, [0-31]+ equals to [0-3]+, not the number from 0 to 31. So change it to [0-9]+. llvm-svn: 197112
-
Hans Wennborg authored
with the edit entries, instead of applying the changes" (And also revert the follow-up r197086.) This seems to have broken Linux builds, which were failing with the following: /build/buildbot/osu8/clang-x86_64-linux-selfhost-rel/llvm.obj/Release+Asserts/lib/libclang.so: error: undefined reference to 'clang::ento::objc_retain::CallEffects::getEffect(clang::ObjCMethodDecl const*)' /build/buildbot/osu8/clang-x86_64-linux-selfhost-rel/llvm.obj/Release+Asserts/lib/libclang.so: error: undefined reference to 'clang::ento::objc_retain::CallEffects::getEffect(clang::FunctionDecl const*)' collect2: error: ld returned 1 exit status llvm-svn: 197111
-
Aaron Ballman authored
llvm-svn: 197110
-
Yi Jiang authored
llvm-svn: 197109
-
Greg Clayton authored
LLDB can crash if given DWARF debug info for a class that has a base class which isn't a complete definition. <rdar://problem/15594781> We need to not crash at any cost. We currently detect if any base classes are forward declarations, emit an error string that directs the use to file a compiler bug, and continues by completing the class with no contents. This avoids a clang crash that would usually follow when we call setBase(). llvm-svn: 197108
-
Enrico Granata authored
llvm-svn: 197107
-
Enrico Granata authored
With this checkin, we use the installed clang compiler to build crashinfo.so from crashinfo.c upon every test suite execution We also try to cleanup after ourselves, which of course will only work if the test suite does not actually crash llvm-svn: 197106
-
Yi Jiang authored
llvm-svn: 197105
-
Aaron Ballman authored
Added a Subjects clause to the section attribute and made its diagnostics more consistent with other attributes. llvm-svn: 197104
-
Richard Smith authored
declarations that might lifetime-extend multiple temporaries. In passing, fix a crasher (PR18217) if an initializer was dependent and exactly the wrong shape, and remove a bogus function (Expr::findMaterializedTemporary) now its last use is gone. llvm-svn: 197103
-
Fariborz Jahanian authored
Objective-C object conforming to 'NSCopying' protocol, infer a 'copy' property, instead of 'strong'. // rdar://15525937 llvm-svn: 197102
-
Hans Wennborg authored
This depends on LLVM r197096. llvm-svn: 197101
-
Hal Finkel authored
llvm-svn: 197100
-
Hal Finkel authored
Aside from a few minor latency corrections, the major change here is a new hazard recognizer which focuses on better dispatch-group formation on the POWER7. As with the PPC970's hazard recognizer, the most important thing it does is avoid load-after-store hazards within the same dispatch group. It uses the POWER7's special dispatch-group-terminating nop instruction (instead of inserting multiple regular nop instructions). This new hazard recognizer makes use of the scheduling dependency graph itself, built using AA information, to robustly detect the possibility of load-after-store hazards. significant test-suite performance changes (the error bars are 99.5% confidence intervals based on 5 test-suite runs both with and without the change -- speedups are negative): speedups: MultiSource/Benchmarks/FreeBench/pcompress2/pcompress2 -0.55171% +/- 0.333168% MultiSource/Benchmarks/TSVC/CrossingThresholds-dbl/CrossingThresholds-dbl -17.5576% +/- 14.598% MultiSource/Benchmarks/TSVC/Reductions-dbl/Reductions-dbl -29.5708% +/- 7.09058% MultiSource/Benchmarks/TSVC/Reductions-flt/Reductions-flt -34.9471% +/- 11.4391% SingleSource/Benchmarks/BenchmarkGame/puzzle -25.1347% +/- 11.0104% SingleSource/Benchmarks/Misc/flops-8 -17.7297% +/- 9.79061% SingleSource/Benchmarks/Shootout-C++/ary3 -35.5018% +/- 23.9458% SingleSource/Regression/C/uint64_to_float -56.3165% +/- 25.4234% SingleSource/UnitTests/Vectorizer/gcc-loops -18.5309% +/- 6.8496% regressions: MultiSource/Benchmarks/ASCI_Purple/SMG2000/smg2000 18.351% +/- 12.156% SingleSource/Benchmarks/Shootout-C++/methcall 27.3086% +/- 14.4733% llvm-svn: 197099
-
Hal Finkel authored
SDep had is* functions for the other kinds of order dependencies (isMustAlias, isWeak, isArtificial, etc.), but not for barrier. Upcoming commits in the PowerPC backend will make use of this function. llvm-svn: 197098
-
Quentin Colombet authored
The assertion was checking that the virtual register VReg used to represent the physical register PReg uses the same register class as the one passed to MachineFunction::addLiveIn. This is over-constraining because it is sufficient to check that the register class of VReg (VRegRC) is a subclass of the register class of PReg (PRegRC) and that VRegRC contains PReg. Indeed, if VReg gets constrained because of some operation constraints between two calls of MachineFunction::addLiveIn, the original assertion cannot match. This fixes <rdar://problem/15633429>. llvm-svn: 197097
-
Hans Wennborg authored
Both FileCheck and clang's -verify need to escape strings for regexes, so let's expose this as a utility in the Regex class. llvm-svn: 197096
-
rdar://problem/15640353Enrico Granata authored
Add an hook for the test suite into the OSX-only CrashReporter "App-specific info" This allows the test suite to set the crash info to the name and file location of every test as the test gets executed If the test suite crashes, the crash log will then report which test is the culprit, even when not using verbose mode This only works on OSX, and defaults to not doing anything on other platforms, but OS/platform-specific invocations can be devised by each individual platform llvm-svn: 197095
-
Ted Kremenek authored
llvm-svn: 197094
-
Ted Kremenek authored
The change isn't completely comprehensive. This can be filled in lazily as needed. There is one consumer right now. llvm-svn: 197093
-
Hans Wennborg authored
Previously, a line like // expected-error-re {{foo}} treats the entirety of foo as a regex. This is inconvenient when matching type names containing regex characters. For example, to match "void *(class test8::A::*)(void)" inside such a regex, one would have to type "void \*\(class test8::A::\*\)\(void\)". This patch changes the semantics of expected-error-re to only treat the parts of the directive wrapped in double curly braces as regexes. This avoids the escaping problem and leads to nicer patterns for those cases; see e.g. the change to test/Sema/format-strings-scanf.c. (The balanced search for closing }} of a directive also makes us handle the full directive in test\SemaCXX\constexpr-printing.cpp:41 and :53.) Differential Revision: http://llvm-reviews.chandlerc.com/D2388 llvm-svn: 197092
-
Chad Rosier authored
intrinsics to use f32 types, rather than their vector equivalents. llvm-svn: 197091
-
Chad Rosier authored
intrinsics to use f32 types, rather than their vector equivalents. llvm-svn: 197090
-
Hal Finkel authored
For one predicate to subsume another, they must both check the same condition register. Failure to check this prerequisite was causing miscompiles. Fixes PR18003. llvm-svn: 197089
-
Greg Clayton authored
Fixed parsing the DW_TAG_member children for structs, unions and classes to not alway treat every member as a bitfield. The previous fix for bitfields made us always search for anonymous bitfields regardless of the member (bitfield or normal field). llvm-svn: 197088
-
Greg Clayton authored
llvm-svn: 197087
-
- Dec 11, 2013
-
-
Alp Toker authored
llvm-svn: 197086
-
Rui Ueyama authored
llvm-svn: 197085
-
Hal Finkel authored
This adds two additional functions to the hazard recognizer interface. These are optional (in the sense that the default implementations preserve the current behavior), and used by the post-RA scheduler. Upcoming commits will use this functionality in order to improve dispatch-group formation on the POWER7 and related cores. Dispatch groups are an odd construct: sometimes we need to insert nops to force a new one to start (for performance reasons), and some instructions need to appear in certain positions within a group, but the groups are not fundamentally cycle based (they can contain instructions with data dependencies with non-trivial latencies). Motivation: unsigned PreEmitNoops(SUnit *) - Used to force the post-RA scheduler to insert nops to force a new dispatch group to begin. We already have a NoopHazard, and this is also still needed. However, NoopHazard only causes a nop to be inserted if there are no other available instructions, and so is not always sufficient. The number of nops to insert depends on state that only the hazard recognizer has, so a general callback is necessary. bool ShouldPreferAnother(SUnit *) - Used to avoid scheduling instructions that would start a new dispatch group when others are available that could be part of the current dispatch group. In this case, we don't want to issue nops, because the non-preferred instruction will implicitly start a new dispatch group regardless. Although the motivation for these functions is driven by the PowerPC backend, they are completely general. llvm-svn: 197084
-
Warren Hunt authored
After r196549 there is no need to separate FinalizeCXXLayout and FinalizeLayout so they were merged and FinalizeCXXLayout was eliminated. llvm-svn: 197083
-
Aaron Ballman authored
No longer accepting attribute spellings with prefix and suffix underscores except for GNU attributes, or C++11-style attributes in the GNU namespace. This prevents attributes such as __declspec(__dllexport__) or [[__noreturn__]] from being treated as known attributes. llvm-svn: 197082
-
Roman Divacky authored
exec) and one for PIC codegen (local and general dynamic). llvm-svn: 197081
-
Rafael Espindola authored
The linkers on these systems don't have anything special to do with these symbols. Since the intent is for them to be absent from the final object, just treat them as private. llvm-svn: 197080
-
David Blaikie authored
Revert "DebugInfo: Move type units into the debug_types section with appropriate comdat grouping and type unit headers" This reverts commit r197073. The test seems to be failing on some buildbots for unknown reasons. Reverting until I can figure that out. If anyone's got a reproduction (.s and .o together would be great) - I'd really appreciate it. llvm-svn: 197079
-