Eric Christopher
4bd7047324
SIToFP and FPToSI conversions work only on fp-reg to fp-reg. Move
...
some data around and implement a couple of move routines to do this.
llvm-svn: 113546
2010-09-09 21:44:45 +00:00
Douglas Gregor
f3af311382
Teach libclang to walk the base and member initializers of a
...
constructor, in source order. Also introduces a new reference kind for
class members, which is used here (for member initializers) and will
also be used for designated initializers and offsetof.
llvm-svn: 113545
2010-09-09 21:42:20 +00:00
Daniel Dunbar
7ce4686958
Fix typo in diagnostic.
...
llvm-svn: 113542
2010-09-09 21:27:25 +00:00
Daniel Dunbar
859dba6637
Driver: Mark function as nounwind when -mkernel or -fapple-kext is present.
...
llvm-svn: 113541
2010-09-09 21:17:44 +00:00
Dan Gohman
f942e96ed5
MDNodes are not Constants.
...
llvm-svn: 113539
2010-09-09 20:54:24 +00:00
Dan Gohman
0a54da2fce
Print invalid metadata references as <badref>, for consistency with
...
regular value references.
llvm-svn: 113538
2010-09-09 20:53:58 +00:00
Eric Christopher
2cbe0fd956
New "move to fp reg" routine. Use it.
...
llvm-svn: 113537
2010-09-09 20:49:25 +00:00
Eric Christopher
82b05d7206
"Strike that, reverse it." -- Mr. Wonka.
...
Truncate when truncating, extend when extending.
llvm-svn: 113536
2010-09-09 20:36:19 +00:00
Owen Anderson
04cf3fd761
What the loop unroller cares about, rather than just not unrolling loops with calls, is
...
not unrolling loops that contain calls that would be better off getting inlined. This mostly
comes up when an interleaved devirtualization pass has devirtualized a call which the inliner
will inline on a future pass. Thus, rather than blocking all loops containing calls, add
a metric for "inline candidate calls" and block loops containing those instead.
llvm-svn: 113535
2010-09-09 20:32:23 +00:00
Bill Wendling
324f8b798f
Remove the 'rc' suffix. It indicates a "release candidate" during LLVM release
...
qualification.
llvm-svn: 113534
2010-09-09 20:27:36 +00:00
Eric Christopher
5903c0be2a
Add FPTrunc, fix some bugs where I forgot to update the value map.
...
llvm-svn: 113533
2010-09-09 20:26:31 +00:00
Owen Anderson
6270515918
Revert r113439, which relaxed the requirement that loops containing calls cannot be unrolled. After some discussion,
...
there seems to be a better way to achieve the same effect.
llvm-svn: 113528
2010-09-09 20:02:23 +00:00
Owen Anderson
11ab204fdc
r113526 introduced an unintended change to the loop unrolling threshold. Revert it.
...
llvm-svn: 113527
2010-09-09 19:11:57 +00:00
Owen Anderson
b61b1647e2
Fix typo in code to cap the loop code size reduction calculation.
...
llvm-svn: 113526
2010-09-09 19:08:59 +00:00
Owen Anderson
62ea1b718c
Use code-size reduction metrics to estimate the amount of savings we'll get when we unroll a loop.
...
Next step is to recalculate the threshold values given this new heuristic.
llvm-svn: 113525
2010-09-09 19:07:31 +00:00
Ted Kremenek
ff3a4ff6e9
Use FindReportInEquivalenceClass to identify all the nodes used for the trimmed graph (in BugReporter). This fixes a problem where a leak that happened to occur on both an exit() path and a non-exit() path was getting reported with the exit() path (which users don't care about).
...
This fixes:
<rdar://problem/8331641> leak reports should not show paths that end with exit() (but ones that don't end with exit())
llvm-svn: 113524
2010-09-09 19:05:34 +00:00
Eric Christopher
6e3eeba4d9
Basic FP->Int, Int->FP conversions.
...
llvm-svn: 113523
2010-09-09 18:54:59 +00:00
Bruno Cardoso Lopes
e8501a468c
Add one more pattern to fallback movddup
...
llvm-svn: 113522
2010-09-09 18:48:34 +00:00
Dan Gohman
1c5be00ec7
Extend the getDependence query with support for PHI translation.
...
llvm-svn: 113521
2010-09-09 18:37:31 +00:00
Dan Gohman
19d19c525c
Add a getPointerOperand() helper function to VAArgInst, for consistency
...
with LoadInst and StoreInst.
llvm-svn: 113520
2010-09-09 18:32:40 +00:00
Caroline Tice
f20e8239cd
Add comments to InstanceSettings constructors explaining why they have
...
to be set up the way they are. Comment out code that removes pending
settings for live instances (after the settings are copied over).
llvm-svn: 113519
2010-09-09 18:26:37 +00:00
Evan Cheng
367a5df8cf
For each instruction itinerary class, specify the number of micro-ops each
...
instruction in the class would be decoded to. Or zero if the number of
uOPs must be determined dynamically.
This will be used to determine the cost-effectiveness of predicating a
micro-coded instruction.
llvm-svn: 113513
2010-09-09 18:18:55 +00:00
Dan Gohman
154cb1437e
Fix this comment.
...
llvm-svn: 113511
2010-09-09 18:04:22 +00:00
Caroline Tice
5c9fdfa46d
Move the ProcessPlugins enum definition from lldb-enumerations.h to
...
Process.h; modify the process.plugins settings variable to use the
correct plugin names.
llvm-svn: 113510
2010-09-09 18:01:59 +00:00
Benjamin Kramer
6c3c349b2b
MCELF: Write relocation fragments in the right endian.
...
- This code is gross, but does the job for now.
llvm-svn: 113509
2010-09-09 18:01:29 +00:00
Roman Divacky
3b727f55aa
Make ELF OS ABI dependent on the OS from target triple.
...
llvm-svn: 113508
2010-09-09 17:57:50 +00:00
Caroline Tice
dd7598578f
Make API calls for setting/getting user settable variables static.
...
Modify Driver to handle SIGWINCH signals and automatically re-set the
term-width variable.
llvm-svn: 113506
2010-09-09 17:45:09 +00:00
Daniel Dunbar
0166c95fdd
Frontend: Add -cxx-system-include option which can be used to specify an
...
explicit list for the C++ system include directories at the -cc1 level, as an
alternative to the horrible AddDefaultCPlusPlusIncludePaths().
llvm-svn: 113505
2010-09-09 17:38:22 +00:00
Daniel Dunbar
1cf2d54987
Fix indentation.
...
llvm-svn: 113504
2010-09-09 17:38:18 +00:00
Daniel Dunbar
4c5301d38e
build: Allow subdir Makefiles to provide an alternate location for the SRCDIR
...
Makefile, which can be used to allow building out of tree sources.
llvm-svn: 113503
2010-09-09 17:38:11 +00:00
Dale Johannesen
0ec303b97b
Move remaining MMX instructions from SSE to MMX.
...
llvm-svn: 113501
2010-09-09 17:13:07 +00:00
Douglas Gregor
9f0e1aa0f2
Simplify template instantiation for C++ exception declarations,
...
eliminating an unnecessary use of TemporaryBase in the process.
llvm-svn: 113500
2010-09-09 17:09:21 +00:00
Owen Anderson
a08318acb2
Refactor code-size reduction estimation methods out of InlineCostAnalyzer and into CodeMetrics. They
...
don't use any InlineCostAnalyzer state, and are useful for other clients who don't necessarily want to use
all of InlineCostAnalyzer's logic, some of which is fairly inlining-specific.
No intended functionality change.
llvm-svn: 113499
2010-09-09 16:56:42 +00:00
Douglas Gregor
3b29b2c795
Eliminate some unnecessary uses of TreeTransform::TemporaryBase. There
...
are still a few (legitimate, unfortunate) uses of this hack around,
but at least now there are fewer.
llvm-svn: 113498
2010-09-09 16:55:46 +00:00
Caroline Tice
f362c45e8d
Modify the command options help generation so that required options
...
are always printed immediately after the command, before optional
options; also so that in the detailed descriptions of each command
option, the options and their help are output in alphabetical order
(sorted by the short option) rather in whatever order they happened to
be in the table.
llvm-svn: 113496
2010-09-09 16:44:14 +00:00
Douglas Gregor
ce5aa33385
Eliminate the comma locations from all of the Sema routines that deal
...
with comma-separated lists. We never actually used the comma
locations, nor did we store them in the AST, but we did manage to
waste time during template instantiation to produce fake locations.
llvm-svn: 113495
2010-09-09 16:33:13 +00:00
Daniel Dunbar
a90e25cc64
MC: Give a (lame) hard error if a .org directive would create an unreasonably
...
large object file (> 1GB).
llvm-svn: 113494
2010-09-09 16:23:33 +00:00
Douglas Gregor
57df3b4b12
Use temporary files for this test, to see if we can flush out an inexplicable error on Windows
...
llvm-svn: 113493
2010-09-09 16:16:39 +00:00
Douglas Gregor
54e5b13a27
Add proper type-source information to UnaryTypeTraitExpr, including
...
libclang visitation.
llvm-svn: 113492
2010-09-09 16:14:44 +00:00
Daniel Dunbar
db0ddaa50b
tests: XFAIL a handful of tests on the vg_leak builder, so we can get back to
...
green.
llvm-svn: 113491
2010-09-09 15:50:19 +00:00
Daniel Dunbar
4026664697
projects: Don't try to build libcxx if one happens to have it checked out into
...
llvm/projects.
llvm-svn: 113490
2010-09-09 15:49:32 +00:00
Douglas Gregor
c9199f522f
Clean up CMake dependencies
...
llvm-svn: 113489
2010-09-09 15:44:58 +00:00
Benjamin Kramer
0a96578ac0
Add an elf-dumper utility.
...
- Output format and some of the code stolen from macho-dump.
- Somewhat incomplete and probably buggy.
- Comes with a very basic test.
llvm-svn: 113488
2010-09-09 15:00:41 +00:00
Howard Hinnant
7d1c2a0f3a
Yonggang Luo fixed gcc version checking for type_traits support.
...
llvm-svn: 113487
2010-09-09 13:58:34 +00:00
NAKAMURA Takumi
19e11f1db7
lib/System/Host.cpp: 7bit-ize. Eliminate "TM" and "(R)" in comments.
...
llvm-svn: 113486
2010-09-09 13:30:48 +00:00
Duncan Sands
78617ea13a
Get rid of the last use of -m64 in FrontendC. This solution
...
of checking for either 4 or 8 is not very satisfactory, but
it would catch the original problem (an alignment of 1).
llvm-svn: 113485
2010-09-09 12:57:29 +00:00
Duncan Sands
11d56c309a
Another test that uses -m64. Here too it looks like it can be
...
removed. Not that the XTARGET wasn't doing anything since it
does nothing without an accompanying XFAIL.
llvm-svn: 113484
2010-09-09 12:48:04 +00:00
Duncan Sands
e194e0c077
On i386, llvm-gcc cannot be assumed to support -m64. Since these
...
tests pass here (i686-linux and x86-64-linux) without -m64, simply
remove the -m64.
llvm-svn: 113483
2010-09-09 12:43:44 +00:00
Benjamin Kramer
d4b4b7e8a1
Remove unused variable.
...
llvm-svn: 113482
2010-09-09 12:27:34 +00:00
Argyrios Kyrtzidis
e262a9558e
Fix C++ PCH issue.
...
Another beating by boost in this test case: http://llvm.org/PR8117
A function specialization wasn't properly initialized if it wasn't canonical.
I wish there was a nice little test case but this was boost.
llvm-svn: 113481
2010-09-09 11:28:23 +00:00