1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 03:33:20 +01:00
Commit Graph

61753 Commits

Author SHA1 Message Date
Dan Gohman
37bf33ccff Add an Intraprocedural form of BasicAliasAnalysis, which aims to
properly handles instructions and arguments defined in different
functions, or across recursive function iterations.

llvm-svn: 107109
2010-06-29 00:50:39 +00:00
Bruno Cardoso Lopes
e4809f15bf Described the missing AVX forms of SSE2 convert instructions
llvm-svn: 107108
2010-06-29 00:36:02 +00:00
Bob Wilson
2a4e6d0e34 Fix Thumb encoding of VMOV (scalar to ARM core register). The encoding is
the same as ARM except that the condition code field is always set to ARMCC::AL.

llvm-svn: 107107
2010-06-29 00:26:13 +00:00
Devang Patel
9762137bd4 The comment string does not match for all targets. PowerPC uses ;.
llvm-svn: 107103
2010-06-29 00:04:40 +00:00
Bob Wilson
5ae34cf120 Unlike other targets, ARM now uses BUILD_VECTORs post-legalization so they
can't be changed arbitrarily by the DAGCombiner without checking if it is
running after legalization.

llvm-svn: 107097
2010-06-28 23:40:25 +00:00
Dale Johannesen
b80bbb4666 Refix XTARGET. Previous attempt matches on powerpc-apple-darwin,
although I don't see why.

llvm-svn: 107090
2010-06-28 22:45:33 +00:00
Dale Johannesen
aed6ab0261 Attempt to fix XTARGET.
llvm-svn: 107088
2010-06-28 22:31:52 +00:00
Bob Wilson
aee90dacaa Make the ARMCodeEmitter identify Thumb functions via ARMFunctionInfo instead
of the Subtarget.

llvm-svn: 107086
2010-06-28 22:23:17 +00:00
Devang Patel
2c43f47ccc Use DW_FORM_addr for DW_AT_entry_pc.
llvm-svn: 107085
2010-06-28 22:22:47 +00:00
Dan Gohman
ccdfbe251d Add a blurb about -scev-aa.
llvm-svn: 107080
2010-06-28 22:09:52 +00:00
Dale Johannesen
94738aa18e In asm's, output operands with matching input constraints
have to be registers, per gcc documentation.  This affects
the logic for determining what "g" should lower to.  PR 7393.
A couple of existing testcases are affected.

llvm-svn: 107079
2010-06-28 22:09:45 +00:00
Kevin Enderby
aaad4f57f0 Added the darwin .secure_log_unique and .secure_log_reset directives.
llvm-svn: 107077
2010-06-28 21:45:58 +00:00
Dan Gohman
50fffcaea3 Constant fold x == undef to undef.
llvm-svn: 107074
2010-06-28 21:30:07 +00:00
Jim Grosbach
8441e67098 tidy up style. no functional change.
llvm-svn: 107073
2010-06-28 21:29:17 +00:00
Dan Gohman
bd121d9b9f Fix Value::stripPointerCasts and BasicAA to avoid trouble on
code in unreachable blocks, which have have use-def cycles.
This fixes PR7514.

llvm-svn: 107071
2010-06-28 21:16:52 +00:00
Bob Wilson
378395412f Refactor encoding function for NEON 1-register with modified immediate format.
llvm-svn: 107070
2010-06-28 21:16:30 +00:00
Bob Wilson
6385cb2386 Support Thumb mode encoding of NEON instructions.
llvm-svn: 107068
2010-06-28 21:12:19 +00:00
Bill Wendling
4fe5512827 Reduce indentation via early exit. NFC.
llvm-svn: 107067
2010-06-28 21:08:32 +00:00
Devang Patel
229053c609 Include inlined function in list of processed subprograms.
llvm-svn: 107065
2010-06-28 20:53:04 +00:00
Jim Grosbach
784bc38fd0 new, no longer brain-dead, r106907
llvm-svn: 107060
2010-06-28 20:26:00 +00:00
Devang Patel
298511b3b4 Remove this weak test.
llvm-svn: 107059
2010-06-28 20:24:35 +00:00
Dale Johannesen
3e352b119e Testcase for llvm-gcc fix 107051.
llvm-svn: 107052
2010-06-28 20:07:30 +00:00
Jakob Stoklund Olesen
87cc5593e0 Don't write temporary files in test directory
llvm-svn: 107049
2010-06-28 20:01:15 +00:00
Jakob Stoklund Olesen
61e6433440 After physreg coalescing, physical registers might not have live ranges where
you would expect.

Don't assert on that case, just give up.

This fixes PR7513.

llvm-svn: 107046
2010-06-28 19:39:57 +00:00
Jakob Stoklund Olesen
482fbf10c0 Add a triple so test runs on Linux as well.
llvm-svn: 107045
2010-06-28 19:31:15 +00:00
Jakob Stoklund Olesen
2ec7bf335a Add more special treatment for inline asm in RegAllocFast.
When an instruction has tied operands and physreg defines, we must take extra
care that the tied operands conflict with neither physreg defs nor uses.

The special treatment is given to inline asm and instructions with tied operands
/ early clobbers and physreg defines.

This fixes PR7509.

llvm-svn: 107043
2010-06-28 18:34:34 +00:00
Eric Christopher
40f544b62c Fix thinko.
llvm-svn: 107042
2010-06-28 18:33:48 +00:00
Eric Christopher
bb7e1bfb0c Pull in the libCrashReporterClient.a information with a warning comment.
Remove library check and regenerate configure.

llvm-svn: 107028
2010-06-28 18:25:51 +00:00
Devang Patel
dffbf36af7 Preserve deleted function's local variables' debug info.
Radar 8122864.

llvm-svn: 107027
2010-06-28 18:25:03 +00:00
Devang Patel
7719df54e1 Make this test darwin specific.
llvm-svn: 107025
2010-06-28 18:04:03 +00:00
Gabor Greif
cc251773b5 use ArgOperand API
llvm-svn: 107017
2010-06-28 16:50:57 +00:00
Gabor Greif
a96e0eb251 use ArgOperand API
llvm-svn: 107016
2010-06-28 16:45:00 +00:00
Gabor Greif
6bf330181d employ CallInst::ArgOffset (for now)
llvm-svn: 107015
2010-06-28 16:43:57 +00:00
Gabor Greif
7a30acd911 simplify: we have solid argument iterator range
llvm-svn: 107014
2010-06-28 16:40:52 +00:00
Dan Gohman
d454f5c234 Generalize AAEval so that it can be used both per-function and
interprocedurally. Note that as of this writing, existing alias
analysis passes are not prepared to be used interprocedurally.

llvm-svn: 107013
2010-06-28 16:01:37 +00:00
Dan Gohman
e5aa414fc8 Fix this build message so that it displays the correct library
name, specifically the "lib" prefix.

llvm-svn: 107011
2010-06-28 15:55:15 +00:00
Daniel Dunbar
e19a293ef9 Revert r106907, "make sure to handle dbg_value instructions in the middle of the
block, not...", it caused a bunch of nightly test regressions.

llvm-svn: 107009
2010-06-28 15:47:17 +00:00
Gabor Greif
2d08791c84 use setArgOperand
llvm-svn: 107004
2010-06-28 12:31:35 +00:00
Gabor Greif
98947dcd6d use CallInst::ArgOffset
llvm-svn: 107003
2010-06-28 12:30:07 +00:00
Gabor Greif
1c2bae559b use ArgOperand API and CallInst::ArgOffset
llvm-svn: 107002
2010-06-28 12:29:20 +00:00
Gabor Greif
47e6a5f906 extend ArgOperand interface: setArgOperand
(in both CallInst and InvokeInst)

also add a (short-lived) constant to CallInst, that names
the operand index of the first call argument. This is
strictly transitional and should not be used for new code.

llvm-svn: 107001
2010-06-28 12:23:36 +00:00
Gabor Greif
e57b886f3d use cached value
llvm-svn: 107000
2010-06-28 11:20:42 +00:00
Devang Patel
1929457a0f Remove dead code.
llvm-svn: 106990
2010-06-28 05:59:13 +00:00
Devang Patel
fdca552823 Use named MDNode, llvm.dbg.sp, to collect subprogram info. This will be used to emit local variable's debug info of deleted functions.
llvm-svn: 106989
2010-06-28 05:53:08 +00:00
Jim Grosbach
a0473aa51c minor housekeeping cleanup: 80-column, trailing whitespace, spelling, etc.. No functional change.
llvm-svn: 106988
2010-06-28 04:27:01 +00:00
Devang Patel
858a0f3664 Do not forget last element, function, while creating Subprogram definition MDNode from subprogram declare MDNode.
llvm-svn: 106985
2010-06-27 21:04:31 +00:00
Chris Lattner
d3a1ef7fea minor cleanup to SROA: when lowering type unsafe accesses to
large integers, the first inserted value would always create
an 'or X, 0'.  Even though this is trivially zapped by
instcombine, don't bother creating this pointless instruction.

llvm-svn: 106979
2010-06-27 07:58:26 +00:00
Chris Lattner
c0f3393cf7 add some named accessors for StoreInst
llvm-svn: 106969
2010-06-26 23:26:37 +00:00
Chris Lattner
28ed238cc7 fit in 80 cols
llvm-svn: 106968
2010-06-26 23:26:22 +00:00
Chris Lattner
93a4f87f9c this test is failing nondeterministically and blaming me, just disable
it for now.

llvm-svn: 106960
2010-06-26 22:08:30 +00:00