| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
| |
llvm-svn: 178358
|
| |
|
|
|
|
|
|
| |
A9 uses itinerary classes, Swift uses RW lists. This tripped some
verification when we're expanding variants. I had to refine the
verification a bit.
llvm-svn: 178357
|
| |
|
|
| |
llvm-svn: 178356
|
| |
|
|
| |
llvm-svn: 178355
|
| |
|
|
|
|
| |
http://llvm.org/bugs/show_bug.cgi?id=15624.
llvm-svn: 178354
|
| |
|
|
|
|
|
|
| |
into a CFE and LLVM part.
rdar://problem/12767564
llvm-svn: 178353
|
| |
|
|
| |
llvm-svn: 178352
|
| |
|
|
| |
llvm-svn: 178351
|
| |
|
|
|
|
| |
disabled, so #ifdef'ing out the test.
llvm-svn: 178350
|
| |
|
|
|
|
| |
It was superseded by MachineBlockPlacement and disabled by default since LLVM 3.1.
llvm-svn: 178349
|
| |
|
|
|
|
| |
Enable tab completion for regular expression commands.
llvm-svn: 178348
|
| |
|
|
| |
llvm-svn: 178346
|
| |
|
|
| |
llvm-svn: 178345
|
| |
|
|
|
|
| |
ALWAYS_INLINE, use ALWAYS_INLINE USED for critical functions.
llvm-svn: 178341
|
| |
|
|
|
|
| |
This removes all register spills from the performance-critical __tsan_{read,write}{1,2,4,8} functions when the host compiler is GCC.
llvm-svn: 178340
|
| |
|
|
|
|
| |
the config-specific flags override common flags.
llvm-svn: 178339
|
| |
|
|
|
|
|
|
|
| |
These instructions are available on the P5x (and later) and on the A2. They
implement the standard floating-point rounding operations (floor, trunc, etc.).
One caveat: frin (round to nearest) does not implement "ties to even", and so
is only enabled in fast-math mode.
llvm-svn: 178337
|
| |
|
|
| |
llvm-svn: 178336
|
| |
|
|
| |
llvm-svn: 178335
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
prone to"
This reverts commit 617330909f0c26a3f2ab8601a029b9bdca48aa61.
It broke the bots:
/home/clangbuild2/clang-ppc64-2/llvm.src/unittests/ADT/SmallVectorTest.cpp:150: PushPopTest
/home/clangbuild2/clang-ppc64-2/llvm.src/unittests/ADT/SmallVectorTest.cpp:118: Failure
Value of: v[i].getValue()
Actual: 0
Expected: value
Which is: 2
llvm-svn: 178334
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
We already avoided warning for
extern "C" const char *Version_string = "2.9";
now we also don't produce any warnings for
extern "C" {
extern const char *Version_string2 = "2.9";
}
llvm-svn: 178333
|
| |
|
|
|
|
| |
being power-of-two sized.
llvm-svn: 178332
|
| |
|
|
| |
llvm-svn: 178331
|
| |
|
|
| |
llvm-svn: 178330
|
| |
|
|
| |
llvm-svn: 178329
|
| |
|
|
|
|
|
|
| |
register classes for Mips64 and DSP-ASE.
No functionality changes.
llvm-svn: 178328
|
| |
|
|
|
|
| |
No functionality changes.
llvm-svn: 178327
|
| |
|
|
|
|
| |
No functionality changes.
llvm-svn: 178326
|
| |
|
|
|
|
| |
<rdar://problem/13527167>
llvm-svn: 178325
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
process was one we attached to.
“process attach” should ask the same questions as process launch if there is a current process.
“process connect” then “process launch” or “process attach” should actually work.
<rdar://problem/13524210>
<rdar://problem/13524208>
<rdar://problem/13488919>
llvm-svn: 178324
|
| |
|
|
|
|
| |
Hexagon
llvm-svn: 178323
|
| |
|
|
|
|
| |
variables, not just ones with explicit initializers
llvm-svn: 178322
|
| |
|
|
| |
llvm-svn: 178321
|
| |
|
|
| |
llvm-svn: 178320
|
| |
|
|
| |
llvm-svn: 178319
|
| |
|
|
| |
llvm-svn: 178318
|
| |
|
|
|
|
|
|
|
| |
for the analyzer.
This setting still isn't enabled yet in the analyzer. This is
just prep work.
llvm-svn: 178317
|
| |
|
|
|
|
|
|
|
| |
Mips assembler supports macros that allows the OR instruction
to have an immediate parameter. This patch adds an instruction
alias that converts this macro into a Mips ORI instruction.
Contributer: Vladimir Medic
llvm-svn: 178316
|
| |
|
|
|
|
|
|
|
|
| |
PC relative loads are missing disassembly comments when disassembled in a live process.
This issue was because some sections, like __TEXT and __DATA in libobjc.A.dylib, were being moved when they were put into the dyld shared cache. This could also affect any other system that slides sections individually.
The solution is to keep track of wether the bytes we will disassemble are from an executable file (file address), or from a live process (load address). We now do the right thing based off of this input in all cases.
llvm-svn: 178315
|
| |
|
|
| |
llvm-svn: 178314
|
| |
|
|
|
|
|
|
| |
'isa' ivar is accessed provided it is the first
ivar. Fixit hint will follow in another patch.
This is continuation of // rdar://13503456
llvm-svn: 178313
|
| |
|
|
|
|
|
|
|
| |
- RDRAND always clears the destination value when a random value is not
available (i.e. CF == 0). This value is truncated or zero-extended as
the false boolean value to be returned. Boolean simplification needs
to skip this 'zext' or 'trunc' node.
llvm-svn: 178312
|
| |
|
|
| |
llvm-svn: 178311
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
“newed” pointers to escape
Add a new callback that notifies checkers when a const pointer escapes. Currently, this only works
for const pointers passed as a top level parameter into a function. We need to differentiate the const
pointers escape from regular escape since the content pointed by const pointer will not change;
if it’s a file handle, a file cannot be closed; but delete is allowed on const pointers.
This should suppress several false positives reported by the NewDelete checker on llvm codebase.
llvm-svn: 178310
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
participates in the computation of the nil we warn about.
We should only suppress a bug report if the IDCed or null returned nil value is directly related to the value we are warning about. This was
not the case for nil receivers - we would suppress a bug report that had an IDCed nil receiver on the path regardless of how it’s
related to the warning.
1) Thread EnableNullFPSuppression parameter through the visitors to differentiate between tracking the value which
is directly responsible for the bug and other values that visitors are tracking (ex: general tracking of nil receivers).
2) in trackNullOrUndef specifically address the case when a value of the message send is nil due to the receiver being nil.
llvm-svn: 178309
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
indirect call.
To enable a load of a call address to be folded with that call, this
load is moved from outside of callseq into callseq. Such a moving
adds a non-glued node (that load) into a glued sequence. This non-glue
load is only removed when DAG selection folds them into a memory form
call instruction. When such instruction selection is disabled, it breaks
DAG schedule.
To prevent that, such moving is disabled when target favors register
indirect call.
Previous workaround disabling CALL32m/CALL64m insn selection is removed.
llvm-svn: 178308
|
| |
|
|
|
|
|
| |
This covers a few cases where the class of a member pointer is not a
CXXRecordDecl.
llvm-svn: 178307
|
| |
|
|
|
|
| |
through the ARC Dataflow analysis. By the time we get to the ARC dataflow analysis, any objc_retainBlock calls are not optimizable.
llvm-svn: 178306
|
| |
|
|
|
|
|
|
|
|
|
| |
immediate in a register. I don't believe this should ever fail, but I see no
harm in trying to make this code bullet proof.
I've added an assert to ensure my assumtion is correct. If the assertion fires
something is wrong and we should fix it, rather then just silently fall back to
SelectionDAG isel.
llvm-svn: 178305
|
| |
|
|
|
|
|
|
|
|
|
| |
Mips assembler allows following to be used as aliased instructions:
jal $rs for jalr $rs
jal $rd,$rd for jalr $rd,$rs
This patch provides alias definitions in td files and test cases to show the usage.
Contributer: Vladimir Medic
llvm-svn: 178304
|