Devang Patel
6e9a979414
Implement target specific getDebugValueLocation().
...
llvm-svn: 110256
2010-08-04 22:07:50 +00:00
Devang Patel
6c378ac473
Use location entry only of the location described by DBG_VALUE is valid.
...
llvm-svn: 110255
2010-08-04 22:07:27 +00:00
Stuart Hastings
49af1ebf2e
Test case for r110250. Radar 8264670. Test case by Fariborz Jahanian!
...
llvm-svn: 110254
2010-08-04 22:05:38 +00:00
Bill Wendling
26feb849a4
Testcase for r110248.
...
llvm-svn: 110249
2010-08-04 21:56:30 +00:00
Bill Wendling
b87f3e5a7d
The EH prepare passes really want to be the last passes run before code-gen.
...
llvm-svn: 110248
2010-08-04 21:44:13 +00:00
Torok Edwin
31e90d2dd1
Use indirect calls in PowerPC JIT.
...
See PR5201. There is no way to know if direct calls will be within the allowed
range for BL. Hence emit all calls as indirect when in JIT mode.
Without this long-running applications will fail to JIT on PowerPC with a
relocation failure.
llvm-svn: 110246
2010-08-04 20:47:44 +00:00
Devang Patel
6d21f61b3f
Fix typo in comment.
...
llvm-svn: 110244
2010-08-04 20:32:36 +00:00
Dan Gohman
db764c6e3b
Fix a minor bug which resulted in intermediate calculations
...
using wider types than are necessary.
llvm-svn: 110241
2010-08-04 19:52:50 +00:00
Dan Gohman
2392287306
Change this llvm_unreachable to report_fatal_error, since it can
...
be triggered by valid, if dubious, IR.
llvm-svn: 110240
2010-08-04 18:51:09 +00:00
Devang Patel
5c1f56b78f
Test case for combination of r110234 & r110235.
...
llvm-svn: 110238
2010-08-04 18:42:46 +00:00
Devang Patel
d71bc1ae4e
While spilling live registers at the end of block check whether they are used by DBG_VALUE machine instructions or not. If a spilled register is used by DBG_VALUE machine instruction then insert a new DBG_VALUE machine instruction to encode variable's new location on stack.
...
llvm-svn: 110235
2010-08-04 18:42:02 +00:00
Devang Patel
0e60e67efb
If a variable is spilled by code generator then use DW_OP_fbreg to describe its location on stack.
...
llvm-svn: 110234
2010-08-04 18:40:52 +00:00
Owen Anderson
9f2bca02d7
Experiments show that we can safely increase our unrolling threshold without unduly impacting code size, particularly
...
since unrolling is not enabled at -Os.
llvm-svn: 110233
2010-08-04 18:32:46 +00:00
Owen Anderson
f16eb37b54
Add a note about the changing pass registration interface.
...
llvm-svn: 110231
2010-08-04 18:27:08 +00:00
Dale Johannesen
21f13209f8
Remove switch for disabling ARM tail calls. They
...
seem to be working correctly. No functional change.
llvm-svn: 110226
2010-08-04 18:07:17 +00:00
Devang Patel
2bf0f3ceff
Add DEBUG message.
...
llvm-svn: 110224
2010-08-04 18:06:05 +00:00
Dan Gohman
ba81fc16a5
Fix whitespace.
...
llvm-svn: 110223
2010-08-04 17:43:57 +00:00
Dan Gohman
1bcc697c2a
Update the polygen grammar for linker_private and linker_private_weak,
...
and add comments about major implemented features.
llvm-svn: 110215
2010-08-04 17:01:59 +00:00
Dan Gohman
a3ed071166
Fix a typo in a comment.
...
llvm-svn: 110211
2010-08-04 16:48:36 +00:00
Dan Gohman
988bfce174
Print a message when a test failure is due to stderr output
...
alone, rather than just an exit code.
llvm-svn: 110208
2010-08-04 16:42:38 +00:00
Dan Gohman
de75469cd8
Remove CVS artifacts.
...
llvm-svn: 110207
2010-08-04 16:25:01 +00:00
Dan Gohman
ccb6156a0f
Remove CVS artifacts.
...
llvm-svn: 110206
2010-08-04 16:11:24 +00:00
Dan Gohman
1a41e6e0ce
Delete scripts which haven't noticed that CVS has gone away.
...
llvm-svn: 110205
2010-08-04 16:10:42 +00:00
Dan Gohman
b3f5c6e795
cvsupdate is gone.
...
llvm-svn: 110204
2010-08-04 16:09:01 +00:00
Dan Gohman
67c0212353
Delete mkpatch. Everything it does is already done by svn diff by default.
...
llvm-svn: 110203
2010-08-04 16:07:22 +00:00
Dan Gohman
852287332a
Remove a link which is no longer relevant.
...
llvm-svn: 110202
2010-08-04 15:59:16 +00:00
Dan Gohman
6786a04d0d
These tests are no longer stored in *CVS*.
...
llvm-svn: 110201
2010-08-04 15:58:01 +00:00
Benjamin Kramer
a53a4eefa6
Enable COFF writer on mingw32 and cygwin.
...
llvm-svn: 110200
2010-08-04 15:32:40 +00:00
Stuart Hastings
cba0d06b7c
call-imm.ll test case regex fix. Patch by Dimitry Andric!
...
llvm-svn: 110199
2010-08-04 15:31:35 +00:00
Kalle Raiskila
8b2f70125f
Make SPU backend handle insertelement and
...
store for "half vectors"
llvm-svn: 110198
2010-08-04 13:59:48 +00:00
Benjamin Kramer
61c8e6dc16
Print an error message when someone tries -integrated-as on an unsupported target.
...
- The COFF backend doesn't support MingW/Cygwin at the moment, it'll report an
error, but it's still much better than random assertions from the MachO backend.
- We want to make ELF the default eventually, it's what the majority of targets use.
llvm-svn: 110197
2010-08-04 13:16:30 +00:00
Torok Edwin
e6f478f795
Note some LLVM 2.7 -> 2.8 APIs that changed / got renamed.
...
I encountered these while upgrading libclamav.
llvm-svn: 110196
2010-08-04 12:43:22 +00:00
Torok Edwin
bfc17d0157
Add a missing function.
...
llvm-svn: 110195
2010-08-04 11:42:45 +00:00
Gabor Greif
94ab490260
by Alexander Herz:
...
"The CWriter::GetValueName() method does not check if a value as an alias
and emits the alias name which will never be defined in the output .c
file (so the output file fails to compile). This can happen if you have
multiple inheritance with several destructors defined by clang (...D0Ev,
...D1Ev, ...D2Ev)."
-- applied with minor tweaks. Thanks!
llvm-svn: 110194
2010-08-04 10:00:52 +00:00
Torok Edwin
6b43ea117f
Fix build of DataFlow.h
...
llvm-svn: 110193
2010-08-04 09:30:20 +00:00
Dan Gohman
5cae103392
Eliminate unnecessary empty string literals.
...
llvm-svn: 110183
2010-08-04 01:39:08 +00:00
Dan Gohman
839c972102
Fix a comment.
...
llvm-svn: 110181
2010-08-04 01:16:35 +00:00
Dan Gohman
f77b735376
Don't construct a std::string with a literal "".
...
llvm-svn: 110180
2010-08-04 01:14:33 +00:00
Dan Gohman
47053d972b
Don't print the filename twice in file-not-found errors.
...
llvm-svn: 110179
2010-08-04 01:13:48 +00:00
Bruno Cardoso Lopes
b8f0d52731
Fix a comment typo and add more 256-bit intrinsics
...
llvm-svn: 110177
2010-08-04 01:09:40 +00:00
Dan Gohman
4f9c40c521
Change the logic which interprets output on stderr as an error so that
...
it doesn't modify the exit code or the stdout contents, and so that it
doesn't clutter the output with "Command has output on stderr!".
llvm-svn: 110171
2010-08-04 00:12:31 +00:00
Bob Wilson
79daf7e0ae
Combine NEON VABD (absolute difference) intrinsics with ADDs to make VABA
...
(absolute difference with accumulate) intrinsics. Radar 8228576.
llvm-svn: 110170
2010-08-04 00:12:08 +00:00
Dan Gohman
794172ca9c
Don't print "Command output (stdout):" when the command has no output,
...
and same for stderr, to avoid clutter in the output.
llvm-svn: 110169
2010-08-04 00:05:16 +00:00
Dan Gohman
c70c6b144a
Use the regular conditional operator syntax instead of a clever hack.
...
llvm-svn: 110168
2010-08-04 00:00:13 +00:00
Dan Gohman
fc419ef6a0
Remove PointerAccessInfo, which nothing was using.
...
llvm-svn: 110167
2010-08-03 23:08:10 +00:00
Chris Lattner
5fba6db223
Make the makefiles go much faster by using the realpath
...
builtin instead of shell. On my 8 core mac pro, this speeds
up a 'make -j8' null build of the lib directory from 1.11s to
0.77s wall time.
Patch by NAKAMURA Takumi!
llvm-svn: 110166
2010-08-03 22:53:22 +00:00
Chris Lattner
53befe7bc1
fix a win64 encoding problem, patch by Cameron Esfahani!
...
llvm-svn: 110164
2010-08-03 22:49:22 +00:00
Dan Gohman
5442c71f2e
Thread const correctness through a bunch of AliasAnalysis interfaces and
...
eliminate several const_casts.
Make CallSite implicitly convertible to ImmutableCallSite.
Rename the getModRefBehavior for intrinsic IDs to
getIntrinsicModRefBehavior to avoid overload ambiguity with CallSite,
which happens to be implicitly convertible to bool.
llvm-svn: 110155
2010-08-03 21:48:53 +00:00
Nate Begeman
b69b182191
Add support for getting & setting the FPSCR application register on ARM when VFP is enabled.
...
Add support for using the FPSCR in conjunction with the vcvtr instruction, for controlling fp to int rounding.
Add support for the FLT_ROUNDS_ node now that the FPSCR is exposed.
llvm-svn: 110152
2010-08-03 21:31:55 +00:00
Dan Gohman
ad867b0aed
The singular of "indices" is "index".
...
llvm-svn: 110135
2010-08-03 20:23:52 +00:00
Dan Gohman
852d6fc50c
Delete an unused function.
...
llvm-svn: 110134
2010-08-03 20:20:56 +00:00
Dan Gohman
3619660529
Make instcombine set explicit alignments on load or store
...
instructions with alignment 0, so that subsequent passes don't
need to bother checking the TargetData ABI size manually.
llvm-svn: 110128
2010-08-03 18:20:32 +00:00
Oscar Fuentes
371b1b91bf
CMake: Change somme target library names:
...
XCore->XCoreGen
PIC16->PIC16CodeGen
After updating your working copy, the first build will fail because it
is using the old library dependencies. Start the build again and it
will work fine.
llvm-svn: 110127
2010-08-03 17:40:31 +00:00
Oscar Fuentes
052c23cd2f
CMake: add version control info to PACKAGE_VERSION, if available.
...
Adds "svn" or "git", depending on the VCS used. If svn, adds the
revision number as well.
llvm-svn: 110121
2010-08-03 17:28:09 +00:00
Dan Gohman
52f9d7d617
Make AliasAnalysis::getModRefInfo conservative in the face of volatility.
...
llvm-svn: 110120
2010-08-03 17:27:43 +00:00
Jakob Stoklund Olesen
0c18757c9d
Oops. Don't normalize spill weights twice.
...
When the normalizeSpillWeights function was introduced, I forgot to remove this
normalization.
This change could affect register allocation. Hopefully for the better.
llvm-svn: 110119
2010-08-03 17:21:16 +00:00
Jakob Stoklund Olesen
011ff9bec9
OK, that's it. This test is going away now. But don't worry, I am taking it to a
...
nice farm in the country where it can play with other tests. And bunnies.
It is not clear what is being tested, and the revision history shows a bunch of
random changes to the expected instruction count. Clearly, we are just fudging
it to pass whenever it fails.
llvm-svn: 110118
2010-08-03 17:21:14 +00:00
Chris Lattner
79102d9725
avoid undefined behavior negating minint.
...
llvm-svn: 110117
2010-08-03 16:57:03 +00:00
Dan Gohman
081627ceb8
Fix a typo Devang noticed.
...
llvm-svn: 110115
2010-08-03 16:48:31 +00:00
Chris Lattner
3db3bb0032
avoid undef behavior on minint, fixing PR7783.
...
llvm-svn: 110114
2010-08-03 16:41:24 +00:00
Peter Collingbourne
ddaaf40d24
Add an atomic lowering pass
...
llvm-svn: 110113
2010-08-03 16:19:16 +00:00
Dan Gohman
35e8a6209d
Use unary + instead of a separate local variable for working
...
around std::min vs static const friction.
llvm-svn: 110112
2010-08-03 16:15:50 +00:00
Oscar Fuentes
758f71af11
Bump cmake_minimum_required to version 2.8
...
llvm-svn: 110110
2010-08-03 15:07:17 +00:00
Daniel Dunbar
edf7b8bd4e
build: Add LLVM_NATIVE_ARCHNAME, which has the sensible value, without "Target"
...
appended.
llvm-svn: 110109
2010-08-03 14:26:17 +00:00
Michael J. Spencer
54cfd42c33
MC: Fix symbol fragment offsets in COFF.
...
Patch by Cameron Esfahani!
llvm-svn: 110104
2010-08-03 05:02:46 +00:00
Michael J. Spencer
d32764c8a0
Revert "MC: Fix symbol fragment offsets in COFF."
...
This reverts commit r110100
Wrong path caps.
llvm-svn: 110103
2010-08-03 04:53:28 +00:00
Michael J. Spencer
a6cfbeb98c
MC: Add time travel support to COFF.
...
llvm-svn: 110101
2010-08-03 04:43:33 +00:00
Michael J. Spencer
cf3d8b4ec4
MC: Fix symbol fragment offsets in COFF.
...
Patch by Cameron Esfahani!
llvm-svn: 110100
2010-08-03 04:43:24 +00:00
Michael J. Spencer
2ce6994211
Fix CMake build
...
llvm-svn: 110097
2010-08-03 02:38:20 +00:00
Bruno Cardoso Lopes
7492a11f0c
Support x86 AVX 256-bit instruction intrinsics. Right now support all of them, but
...
as soon as we properly codegen the simple vector operations in clang, remove the
unnecessary builti-ins/intrinsics from clang and llvm.
llvm-svn: 110094
2010-08-03 01:53:41 +00:00
Dan Gohman
4887001f81
Update some comments.
...
llvm-svn: 110092
2010-08-03 01:07:32 +00:00
Dan Gohman
2a190081f6
Introduce a symbolic constant for ~0u for use with AliasAnalysis.
...
llvm-svn: 110091
2010-08-03 01:03:11 +00:00
Dan Gohman
da7182e116
Add a convenient form of AliasAnalysis::alias for the case where the sizes
...
are unknown.
llvm-svn: 110090
2010-08-03 00:56:30 +00:00
Dan Gohman
7cac95778f
Make SCEVUnknown a CallbackVH, so that it can be notified directly
...
of Value deletions and RAUWs, instead of relying on ScalarEvolution's
Scalars map being notified, as that's complicated at best, and
insufficient in general.
This means SCEVUnknown needs a non-trivial destructor, so introduce
a mechanism to allow ScalarEvolution to locate all the SCEVUnknowns.
llvm-svn: 110086
2010-08-02 23:49:30 +00:00
Stuart Hastings
460a356bf6
Diabolical hack to make a test compatible with clang. (Thanks to Dale!) Radar 8246180.
...
llvm-svn: 110081
2010-08-02 23:29:03 +00:00
Dan Gohman
272980b3f6
Sketch up a preliminary Type-Based Alias Analysis implementation.
...
llvm-svn: 110077
2010-08-02 23:11:01 +00:00
Dan Gohman
9c6e188f56
Fix visitInvokeInst to call visitTerminatorInst, and remove
...
a redundant check from checkInstruction.
llvm-svn: 110076
2010-08-02 23:09:14 +00:00
Dan Gohman
d0a1e3de3f
Add Verifier logic for indirectbr.
...
llvm-svn: 110075
2010-08-02 23:08:33 +00:00
Dan Gohman
d8968da2c5
Add a lint check for indirectbr with no successors.
...
llvm-svn: 110074
2010-08-02 23:06:43 +00:00
Devang Patel
33a2cdf3f9
Add explicit constructors. Patch by Renato Golin.
...
llvm-svn: 110072
2010-08-02 22:51:46 +00:00
Stuart Hastings
0e6e8858ff
Testcase for r110043. Radar 8246180.
...
llvm-svn: 110070
2010-08-02 22:09:53 +00:00
Bill Wendling
44dc60ba13
Early exit and reduce indentation. No functionality change.
...
llvm-svn: 110069
2010-08-02 22:06:08 +00:00
Oscar Fuentes
d945ae652a
Improve discrimination of unknown libraries from ignored targets on
...
LLVMConfig.
llvm-svn: 110065
2010-08-02 21:24:12 +00:00
Oscar Fuentes
e53004b188
explicit_map_components_to_libraries now does not complain when there
...
is a dependence on an LLVM target that is not included on the build.
When LLVM_TARGETS_TO_BUILD didn't include all the targets, the
function emitted an error like
"Library LLVMArmParser not found in list of llvm libraries."
llvm-svn: 110060
2010-08-02 20:48:01 +00:00
Oscar Fuentes
30644950d6
Lets the CMake GUI show a list of possible values for LLVM_USE_CRT
...
Patch by nobled!
llvm-svn: 110057
2010-08-02 19:00:34 +00:00
Dan Gohman
abfafadfc7
Fix namespace polution.
...
llvm-svn: 110056
2010-08-02 18:50:06 +00:00
Oscar Fuentes
e4e9e8e6e7
Updated LLVMLibDeps.cmake.
...
llvm-svn: 110055
2010-08-02 18:36:53 +00:00
Devang Patel
d070128de5
Free DbgScope created for dead functions.
...
llvm-svn: 110045
2010-08-02 17:32:15 +00:00
Kalle Raiskila
77558b7d13
More SPU v2f32 stuff added: insertelement and shuffle.
...
llvm-svn: 110038
2010-08-02 11:22:10 +00:00
Kalle Raiskila
68b3886678
Add preliminary v2f32 support for SPU. Like with v2i32, we just
...
duplicate the instructions and operate on half vectors.
Also reorder code in SPUInstrInfo.td for better coherency.
llvm-svn: 110037
2010-08-02 10:25:47 +00:00
Owen Anderson
8f306a779b
Re-apply the infamous r108614, with a fix pointed out by Dirk Steinke.
...
llvm-svn: 110036
2010-08-02 09:32:13 +00:00
Kalle Raiskila
622f8eb981
Add preliminary v2i32 support for SPU backend. As there are no
...
such registers in SPU, this support boils down to "emulating"
them by duplicating instructions on the general purpose registers.
This adds the most basic operations on v2i32: passing parameters,
addition, subtraction, multiplication and a few others.
llvm-svn: 110035
2010-08-02 08:54:39 +00:00
Oscar Fuentes
40b31ad3ee
Prefix `next' iterator operation with `llvm::'.
...
Fixes potential ambiguity problems on VS 2010.
Patch by nobled!
llvm-svn: 110029
2010-08-02 06:00:15 +00:00
Daniel Dunbar
c1b09c8644
Fix a -Wreorder warning.
...
llvm-svn: 110022
2010-08-02 05:43:46 +00:00
Nick Lewycky
f52bd9cc33
Work in progress.
...
Start cleaning up MergeFunctions to look more like the rest of LLVM. The
primary change here is to move the methods responsible for comparison into the
new FunctionComparator object. Some comments added. There's more to do.
llvm-svn: 110021
2010-08-02 05:23:03 +00:00
Eli Friedman
460ad41d6d
PR7586: Make sure we don't claim that unknown bits are actually known in the
...
ISD::AND case of TargetLowering::SimplifyDemandedBits.
llvm-svn: 110019
2010-08-02 04:42:25 +00:00
Nick Lewycky
adaf5172bf
Fix this condition; it has an else clause attached for Darwin only. Patch
...
by Takumi Nakamura.
llvm-svn: 110016
2010-08-02 03:16:19 +00:00
Daniel Dunbar
1465d7cffa
Fix comment.
...
llvm-svn: 110006
2010-08-02 01:25:20 +00:00
Daniel Dunbar
f85eb933d4
docs/TestingGuide: Minimal update to describe 'lit' based regression testing
...
instead of DejaGNU. Still a bit kooky, since the current test format still has
some strong Tcl roots. Oh well!
llvm-svn: 110005
2010-08-02 01:20:23 +00:00
Daniel Dunbar
a9075c5ead
docs/TestingGuide: Rip out description of old nightly tester infrastructure. The
...
official recommendation is to use LNT instead. I will write docs on setting up
an LNT installation for submission to llvm.org, one day.
llvm-svn: 110004
2010-08-02 01:20:20 +00:00