Jakob Stoklund Olesen
77ce60119b
Add a new kind of MachineOperand: MO_RegisterMask.
...
Register masks will be used as a compact representation of large clobber
lists. Currently, an x86 call instruction has some 40 operands
representing call-clobbered registers. That's more than 1kB of useless
operands per call site.
A register mask operand references a bit mask of call-preserved
registers, everything else is clobbered. The bit mask will typically
come from TargetRegisterInfo::getCallPreservedMask().
By abandoning ImplicitDefs for call-clobbered registers, it also becomes
possible to share call instruction descriptions between calling
conventions, and we can get rid of the WINCALL* instructions.
This patch introduces the new operand kind. Future patches will add
RegMask support to target-independent passes before finally the fixed
clobber lists can be removed from call instruction descriptions.
llvm-svn: 148250
2012-01-16 19:22:00 +00:00
Jakob Stoklund Olesen
a33612c1f2
Freeze reserved registers before starting register allocation.
...
The register allocators don't currently support adding reserved
registers while they are running. Extend the MRI API to keep track of
the set of reserved registers when register allocation started.
Target hooks like hasFP() and needsStackRealignment() can look at this
set to avoid reserving more registers during register allocation.
llvm-svn: 147577
2012-01-05 00:26:49 +00:00
Nadav Rotem
682f1c2187
Add a few lines to the release notes:
...
1. pointer-vector
2. type legalizer changes and vector-select
3. X86 ISA changes.
llvm-svn: 146964
2011-12-20 08:02:50 +00:00
Dan Gohman
80dc86c550
Add a line to ReleaseNotes for half float.
...
llvm-svn: 146939
2011-12-20 01:10:56 +00:00
Jakob Stoklund Olesen
7b1b08eb77
Remove a register class that can just as well be synthesized.
...
Add the new TableGen register class synthesizer feature to the release
notes.
llvm-svn: 146875
2011-12-19 16:53:40 +00:00
Jakob Stoklund Olesen
3d0382e29d
Note ARM constant island alignment in the release notes.
...
The command line option should be removed, but not until the feature has
gotten a lot of testing. The ARMConstantIslandPass tends to have subtle
bugs that only show up after a while.
llvm-svn: 146739
2011-12-16 16:07:41 +00:00
Evan Cheng
638936d9cb
Add a blurb about MachineInstr bundling support.
...
llvm-svn: 146603
2011-12-14 22:57:45 +00:00
Kostya Serebryany
4579e0c874
mention AddressSanitizer in 3.1 release notes
...
llvm-svn: 146505
2011-12-13 19:46:24 +00:00
Chris Lattner
e407984265
Rip llvm 3.0 out of the release notes, making room for LLVM 3.1
...
llvm-svn: 146493
2011-12-13 17:55:30 +00:00
Jakub Staszak
1f05c26ed0
Make Release Notes HTML 4.01 Strict.
...
llvm-svn: 145991
2011-12-06 23:33:07 +00:00
Jakub Staszak
5fd1d873c7
Add link to builtin_expect in Release Notes.
...
llvm-svn: 145979
2011-12-06 22:31:27 +00:00
Jakub Staszak
e109ff236b
Add link to llvm.expect in Release Notes.
...
llvm-svn: 145964
2011-12-06 20:56:36 +00:00
Chris Lattner
7592e96900
fix broken tag
...
llvm-svn: 145590
2011-12-01 17:25:28 +00:00
Bill Wendling
2d1421e389
Remove an XXX which hasn't been fixed yet. It's too late now.
...
llvm-svn: 145518
2011-11-30 20:53:52 +00:00
Duncan Sands
54ca22353a
Mention that -O4 does result in more optimization when used with
...
-fplugin-arg-dragonegg-enable-gcc-optzns, though it usually isn't
a win.
llvm-svn: 145486
2011-11-30 08:46:05 +00:00
Benjamin Kramer
0cf194e55c
Add a link to Bill's blog post.
...
llvm-svn: 145419
2011-11-29 19:24:11 +00:00
Rafael Espindola
8e06adec06
Release notes for segmented stacks.
...
Patch by Sanjoy Das.
llvm-svn: 145416
2011-11-29 19:08:23 +00:00
Peter Collingbourne
1dac65bf58
Remove content that has been moved to Clang release notes.
...
llvm-svn: 145362
2011-11-29 02:04:48 +00:00
Peter Collingbourne
70d1e1ce8f
Fix grammar.
...
llvm-svn: 145361
2011-11-29 02:04:44 +00:00
Chandler Carruth
6bf1babd92
Add a link from the LLVM release notes to the Clang release notes.
...
I suspect we could profitably remove/move some of the bullet points
under Clang here to the Clang notes in order to keep things clean on
both sides. Unless I hear objections I'll start doing that once folks
have read over the Clang notes a bit.
llvm-svn: 145340
2011-11-29 00:32:43 +00:00
Rafael Espindola
1928474c5f
Expand the part about CFI a bit.
...
llvm-svn: 145324
2011-11-28 23:55:49 +00:00
Joe Abbey
3ab17e44c2
Merging two bullet points into one
...
llvm-svn: 145287
2011-11-28 22:07:12 +00:00
Peter Collingbourne
a45a429eec
Add OpenCL blurb to release notes.
...
llvm-svn: 145270
2011-11-28 20:04:12 +00:00
Michael J. Spencer
fd893a8f83
Add object file related release notes.
...
llvm-svn: 145254
2011-11-28 18:20:09 +00:00
Jakob Stoklund Olesen
a5deae0dad
Explain what ExeDepsFix does.
...
llvm-svn: 145253
2011-11-28 18:03:11 +00:00
Jakob Stoklund Olesen
42499e2fe5
Add a blurb about the new ExecutionDepsFix pass.
...
llvm-svn: 145220
2011-11-28 01:46:19 +00:00
Chris Lattner
586730bca4
dwarf parsing stuff.
...
llvm-svn: 145207
2011-11-27 22:39:23 +00:00
Chris Lattner
2ad1c42ff1
first pass of writing complete!
...
llvm-svn: 145206
2011-11-27 22:36:22 +00:00
Chris Lattner
a2b28b7223
arm and carve out a place ot mention segmented stacks.
...
llvm-svn: 145204
2011-11-27 22:12:32 +00:00
Chris Lattner
76bf38677e
optimize, mc, x86
...
llvm-svn: 145200
2011-11-27 22:03:34 +00:00
Chris Lattner
7c3316e32f
some writing.
...
llvm-svn: 145198
2011-11-27 21:30:28 +00:00
Chris Lattner
e6841be524
distribute various bullets to different sections.
...
llvm-svn: 145196
2011-11-27 20:51:47 +00:00
Chris Lattner
77d8c4ca1c
rewrite the known problems section. Including a short list of individual bugs per target isn't particularly useful. Link to the target features matrix.
...
llvm-svn: 145193
2011-11-27 19:38:20 +00:00
Chris Lattner
e86c1f3e3a
move the detailed information about the EH rewrite to a comment, Bill is
...
blog'izing it.
llvm-svn: 145192
2011-11-27 19:26:30 +00:00
Chris Lattner
8372936f04
tweak subprojects' section
...
llvm-svn: 145191
2011-11-27 18:53:41 +00:00
Chris Lattner
3ee5071877
some random notes.
...
llvm-svn: 145190
2011-11-27 18:47:37 +00:00
Chris Lattner
54b79100ec
add some final random notes, I've completed my pass over all the commits.
...
I'll work on turning this into something intelligible tomorrow.
llvm-svn: 145177
2011-11-27 08:32:32 +00:00
Chris Lattner
bdef0b7b87
add some notes.
...
llvm-svn: 145173
2011-11-27 07:37:53 +00:00
Chris Lattner
0e370d97fb
remove asmparsing and documentation support for "volatile load", which was only produced by LLVM 2.9 and earlier. LLVM 3.0 and later prefers "load volatile".
...
llvm-svn: 145172
2011-11-27 06:56:53 +00:00
Chris Lattner
29cec166f4
some notes.
...
llvm-svn: 145170
2011-11-27 06:24:49 +00:00
Chris Lattner
97342525a2
add some notes
...
llvm-svn: 145163
2011-11-27 05:47:57 +00:00
Benjamin Kramer
e07dbb2524
Move the branch probability blurb into the optimizer section. Add a minimal bullet for AVX.
...
llvm-svn: 145145
2011-11-26 11:14:54 +00:00
David Chisnall
a846de8d29
Added Objective-C and libc++ details to the 3.0 release notes.
...
llvm-svn: 145144
2011-11-26 10:56:17 +00:00
Benjamin Kramer
6ecfe0d42b
shpelling
...
llvm-svn: 145138
2011-11-25 21:26:00 +00:00
Benjamin Kramer
8747f6f30f
Remove ZooLib from the projects list.
...
I don't see how the project is using LLVM and we really can't list every user of
the clang analyzer. Sorry.
llvm-svn: 145137
2011-11-25 21:03:06 +00:00
Chris Lattner
e971767600
add a user
...
llvm-svn: 145136
2011-11-25 20:36:17 +00:00
Chris Lattner
49dcdefc52
add some notes
...
llvm-svn: 145135
2011-11-25 20:33:27 +00:00
Chris Lattner
f21b1b5a2e
add faust
...
llvm-svn: 145134
2011-11-25 20:28:16 +00:00
Jim Grosbach
22c7ad08ab
Add a few notes for ARM and a blurb about the MCJIT.
...
llvm-svn: 145118
2011-11-24 00:49:21 +00:00
Chris Lattner
e368a7be33
x86/windows issues fixed.
...
llvm-svn: 144878
2011-11-17 01:42:23 +00:00