- Apr 06, 2012
-
-
Jakob Stoklund Olesen authored
After register masks were introdruced to represent the call clobbers, it is no longer necessary to have duplicate instruction for iOS. llvm-svn: 154209
-
Sean Callanan authored
the stress test by a LOT. llvm-svn: 154208
-
Daniel Dunbar authored
llvm-svn: 154207
-
Daniel Dunbar authored
- This uses the llvm-theme developed by Michael Spencer and the base structure (front-facing index page) I use for LNT. llvm-svn: 154206
-
Sean Callanan authored
new features: (1) it outputs the instruction currently being tested to a log file, if a path is provided (2) if instructed, it prints the time remaining in the exhaustive test llvm-svn: 154205
-
Benjamin Kramer authored
This method is very hot, it is called when emitting diagnostics, in -E mode and for many #pragma handlers. It scans through the whole source file to count newlines, records and caches them in a vector. The speedup from vectorization isn't very large, as we fall back to bytewise scanning when we hit a newline. There might be a way to avoid leaving the sse loop but everything I tried didn't work out because a call to push_back clobbers xmm registers. About 2% speedup on average on "clang -E > /dev/null" of all .cpp files in clang's lib/Sema. llvm-svn: 154204
-
Kostya Serebryany authored
llvm-svn: 154203
-
Akira Hatanaka authored
llvm-svn: 154202
-
Kostya Serebryany authored
llvm-svn: 154201
-
Simon Atanasyan authored
llvm-svn: 154200
-
Chandler Carruth authored
which exists for this purpose. llvm-svn: 154199
-
DeLesley Hutchins authored
Thread safety analysis: downgraded requirement that mutex expressions refer to a lockable type from error to warning. llvm-svn: 154198
-
Johnny Chen authored
Plus some minor cleanup of test method names. Third and final batch is coming. llvm-svn: 154197
-
Fariborz Jahanian authored
expressions. // rdar://10803676 llvm-svn: 154196
-
Simon Atanasyan authored
MIPS: Pass -EB/-EL argument to the assembler according to selected endian when compile for MIPS targets. llvm-svn: 154195
-
Jordy Rose authored
Patch by Sean McBride! llvm-svn: 154194
-
Matt Beaumont-Gay authored
llvm-svn: 154193
-
Sean Callanan authored
disassembler requires a MCSubtargetInfo and a MCInstrInfo to exist in order to initialize the instruction printer and disassembler; however, although the printer and disassembler keep references to these objects they do not own them. Previously, the MCSubtargetInfo and MCInstrInfo objects were just leaked. I have extended LLVMDisasmContext to own these objects and delete them when it is destroyed. llvm-svn: 154192
-
John McCall authored
global destructor entry. For some reason this isn't enabled for apple-kexts; it'd be good to have documentation for that. Based on a patch by Nakamura Takumi! llvm-svn: 154191
-
John McCall authored
llvm-svn: 154190
-
John McCall authored
the template instantiation of statement-expressions. I think it was jyasskin who had a crashing testcase in this area; hopefully this fixes it and he can find his testcase and check it in. llvm-svn: 154189
-
Jordy Rose authored
llvm-svn: 154188
-
Patrick Beard authored
Added a new attribute, objc_root_class, which informs the compiler when a root class is intentionally declared. The warning this inhibits, -Wobjc-root-class, is opt-in for now. However, all clang unit tests that would trigger the warning have been updated to use -Wno-objc-root-class. <rdar://problem/7446698> llvm-svn: 154187
-
Greg Clayton authored
Fixed ModuleList::FindTypes() so that when a symbol context is supplied that contains a valid module, it will search that module first, then if we are still looking for matches (we have found less that "max_matches"), search in all of the other modules as well. llvm-svn: 154186
-
Sean Callanan authored
did not destroy the underlying disassembler in our destructor. llvm-svn: 154185
-
Simon Atanasyan authored
llvm-svn: 154184
-
Jakob Stoklund Olesen authored
ARM and Thumb2 mode can use cmn instructions to compare against negative immediates. Thumb1 mode can't. llvm-svn: 154183
-
Greg Clayton authored
In a prior commit, I changed the parameters around on a ModuleList::FindTypes where the old parameters that existing clients were using would have been compatible, so I renamed ModuleList::FindTypes to ModuleList::FindTypes2. Then I made fixes and verified I updated and fixed all client code, but I forgot to rename the function back to ModuleList::FindTypes(). I am doing that now and also cleaning up the C++ dynamic type code a bit. llvm-svn: 154182
-
Greg Clayton authored
Check if the two clang opaque type pointers are equal before doing anything more exhaustive comparison. llvm-svn: 154181
-
David Chisnall authored
parameter until we have a more sensible API for doing the same thing. Reviewed by Chandler. llvm-svn: 154180
-
Chandler Carruth authored
simplification has been performed. This is a bit less efficient (requires another ilist walk of the basic blocks) but shouldn't matter in practice. More importantly, it's just too much work to keep track of all the various ways the return instructions can be mutated while simplifying them. This fixes yet another crasher, reported by Daniel Dunbar. llvm-svn: 154179
-
Chandler Carruth authored
Smith for pointing this out in review. llvm-svn: 154178
-
Chandler Carruth authored
inside of a sysroot targeting a system+sysroot which is "similar" or "compatible" with the host system. This shows up when trying to build system images on largely compatible hardware as-if fully cross compiled. The problem is that previously we *perfectly* mimiced GCC here, and it turns out GCC has a bug that no one has really stumbled across. GCC will try to look in thy system prefix ('/usr/local' f.ex.) into which it is instaled to find libraries installed along side GCC that should be preferred to the base system libraries ('/usr' f.ex.). This seems not unreasonable, but it has a very unfortunate consequence when combined with a '--sysroot' which does *not* contain the GCC installation we're using to complete the toolchain. That results in some of the host system's library directories being searched during the link. Now, it so happens that most folks doing stuff like this use '--with-sysroot' and '--disable-multilib' when configuring GCC. Even better, they're usually not cross-compiling to a target that is similar to the host. As a result, searching the host for libraries doesn't really matter -- most of the time weird directories get appended that don't exist (no arm triple lib directory, etc). Even if you're cross-compiling from 32-bit to 64-bit x86 or vice-versa, disabling multilib makes it less likely that you'll actually find viable libraries on the host. But that's just luck. We shouldn't rely on this, and this patch disables looking in the system prefix containing the GCC installation if that system prefix is *outside* of the sysroot. For empty sysroots, this has no effect. Similarly, when using the GCC *inside* of the sysroot, we still track wherever it is installed within the sysroot and look there for libraries. But now we can use a cross compiler GCC installation outside the system root, and only look for the crtbegin.o in the GCC installation, and look for all the other libraries inside the system root. This should fix PR12478, allowing Clang to be used when building a ChromiumOS image without polluting the image with libraries from the host system. llvm-svn: 154176
-
David Chisnall authored
llvm-svn: 154175
-
Duncan Sands authored
The modifications are a lot more trivial than they appear to be in the diff! llvm-svn: 154174
-
DeLesley Hutchins authored
llvm-svn: 154173
-
Craig Topper authored
llvm-svn: 154172
-
Benjamin Kramer authored
llvm-svn: 154171
-
Benjamin Kramer authored
DenseMap: Perform the pod-like object optimization when the value type is POD-like, not the DenseMapInfo for it. Purge now unused template arguments. This has been broken since r91421. Patch by Lubos Lunak! llvm-svn: 154170
-
Simon Atanasyan authored
llvm-svn: 154168
-