| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
restrict isn't.
llvm-svn: 47316
|
| |
|
|
|
|
|
|
| |
unneccessary constraints,
and add some others that should have been in from the first place. Document the whole thing better.
llvm-svn: 47315
|
| |
|
|
| |
llvm-svn: 47314
|
| |
|
|
|
|
|
| |
can be a SNaN. We could be more aggressive and turn this into
unreachable, but that is less nice, and not really worth it.
llvm-svn: 47313
|
| |
|
|
| |
llvm-svn: 47312
|
| |
|
|
| |
llvm-svn: 47311
|
| |
|
|
|
|
|
|
| |
static function.
At some point in the future, this check will become smarter.
llvm-svn: 47310
|
| |
|
|
|
|
|
|
| |
to loop
over all the parameters of the callee looking for it.
llvm-svn: 47309
|
| |
|
|
| |
llvm-svn: 47308
|
| |
|
|
|
|
|
| |
to apply to a memcpy into processInstruction. Also, fix a bug in the check due to
missing braces.
llvm-svn: 47307
|
| |
|
|
|
|
| |
llc: for the -info-output-file option: requires a value!
llvm-svn: 47306
|
| |
|
|
|
|
| |
branches. memcpy's are a kind of CallInst.
llvm-svn: 47305
|
| |
|
|
|
|
| |
or UnknownVal to be interpreted as an actual NonLValue/LValue.
llvm-svn: 47304
|
| |
|
|
| |
llvm-svn: 47303
|
| |
|
|
| |
llvm-svn: 47302
|
| |
|
|
|
|
| |
order to save a single instruction since a branch will be inserted for each BB.
llvm-svn: 47301
|
| |
|
|
| |
llvm-svn: 47300
|
| |
|
|
|
|
|
|
| |
CharacterLiterals. This may not be a permanent solution; it doesn't cost that
much, however, to create a few additional states, and solves a whole bunch
of edge cases when handling ?, ||, and &&.
llvm-svn: 47299
|
| |
|
|
| |
llvm-svn: 47298
|
| |
|
|
| |
llvm-svn: 47297
|
| |
|
|
| |
llvm-svn: 47296
|
| |
|
|
|
|
|
|
|
| |
allows you to do things like
typedef __attribute__(( ocu_vector_type(4))) float float4;
float4 *x;
float y = x[0][2];
llvm-svn: 47295
|
| |
|
|
|
|
| |
For now we just treat their values as "Unknown."
llvm-svn: 47294
|
| |
|
|
|
|
|
|
|
| |
an analyzed function.
GRExprEngine now records stores to "uninitialized lvalues" (which are sinks in
the ExplodedGraph).
llvm-svn: 47293
|
| |
|
|
|
|
| |
Fix Olden/bh test.
llvm-svn: 47292
|
| |
|
|
|
|
|
|
| |
check if it's essentially a SCALAR_TO_VECTOR. Avoid turning (v8i16) <10, u, u, u> to <10, 0, u, u, u, u, u, u>. Instead, simply convert it to a SCALAR_TO_VECTOR of the proper type.
- X86 now normalize SCALAR_TO_VECTOR to (BIT_CONVERT (v4i32 SCALAR_TO_VECTOR)). Get rid of X86ISD::S2VEC.
llvm-svn: 47290
|
| |
|
|
| |
llvm-svn: 47289
|
| |
|
|
|
|
| |
UninitializedVals and UnknownVals.
llvm-svn: 47288
|
| |
|
|
| |
llvm-svn: 47287
|
| |
|
|
|
|
| |
Fix McCat/08-main test.
llvm-svn: 47286
|
| |
|
|
|
|
|
|
|
|
|
|
| |
function. Will
probably make this a separate command line option later.
Added "--analyze-function" option to the driver to (gradually) allow different
analyses to only be run on specific functions. Currently only --grsimple uses
this option.
llvm-svn: 47285
|
| |
|
|
|
|
| |
We will implement symbol "unification" later.
llvm-svn: 47284
|
| |
|
|
|
|
|
| |
on x86-32 since i64 itself is not a Legal type. And, update some
comments.
llvm-svn: 47282
|
| |
|
|
|
|
| |
- For now, conservatively ignore copy MI whose source is a physical register. Commuting its def MI can cause a physical register live interval to be live through a loop (since we know it's live coming into the def MI).
llvm-svn: 47281
|
| |
|
|
| |
llvm-svn: 47280
|
| |
|
|
| |
llvm-svn: 47279
|
| |
|
|
| |
llvm-svn: 47278
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
has plain one-result scalar integer multiplication instructions.
This avoids expanding such instructions into MUL_LOHI sequences that
must be special-cased at isel time, and avoids the problem with that
code that provented memory operands from being folded.
This fixes PR1874, addressesing the most common case. The uncommon
cases of optimizing multiply-high operations will require work
in DAGCombiner.
llvm-svn: 47277
|
| |
|
|
|
|
| |
to Dale for noticing this!
llvm-svn: 47276
|
| |
|
|
| |
llvm-svn: 47275
|
| |
|
|
| |
llvm-svn: 47274
|
| |
|
|
|
|
|
|
| |
requested by Chris. While there, do the same
for an existing function committed by someone
called "lattner" :)
llvm-svn: 47273
|
| |
|
|
| |
llvm-svn: 47272
|
| |
|
|
| |
llvm-svn: 47271
|
| |
|
|
| |
llvm-svn: 47270
|
| |
|
|
| |
llvm-svn: 47269
|
| |
|
|
|
|
|
|
| |
to explicitly check
that Object is an Argument before casting it to one.
llvm-svn: 47268
|
| |
|
|
|
|
| |
of an MBB returns a pointer the MBB. Reviewed by Evan.
llvm-svn: 47267
|
| |
|
|
|
|
|
|
|
|
|
| |
that, if an sret function tail calls
another sret function, it should pass its own sret parameter to the tail callee, allowing it to fill in the correct
return value. llvm-gcc does not emit this by default. Instead, it allocates space in the caller for the sret of
the tail call and then uses memcpy to copy the result into the caller's sret parameter. This optimization detects
and optimizes that case.
llvm-svn: 47265
|
| |
|
|
|
|
| |
code was not.
llvm-svn: 47264
|