Bill Wendling
395d7dee0e
Give a description of the Objective-C garbage collection module flags.
...
The rule governing the flags is this:
no-gc + no-gc = no-gc
no-gc + gc = no-gc
no-gc + gc-only = error
gc + gc = gc
gc + gc-only = gc-only
gc-only + gc-only = gc-only
llvm-svn: 150646
2012-02-16 01:10:50 +00:00
Daniel Dunbar
81ccdef572
utils: Kill NewNightlyTest.pl, which has been replaced by LNT (as far as I know).
...
llvm-svn: 150610
2012-02-15 19:24:11 +00:00
Bill Wendling
55933f75ab
Document the new module flags.
...
llvm-svn: 150301
2012-02-11 11:59:36 +00:00
Pete Cooper
57c51010db
Added description of invariant.load metadata to LangRef. It was added to the compiler in r144100
...
llvm-svn: 150257
2012-02-10 18:13:54 +00:00
Jia Liu
035a90c9ec
update --enable-targets list
...
llvm-svn: 150229
2012-02-10 04:58:24 +00:00
Devang Patel
c4b407c311
Now subprogram descriptors are not collected by llvm.dbg.sp NamedMDNode. Update document to reflect this change.
...
llvm-svn: 150187
2012-02-09 17:34:01 +00:00
Chris Lattner
eaaee90a17
fix broken link
...
llvm-svn: 150105
2012-02-08 22:20:00 +00:00
Chris Lattner
9cb250a113
No actual functional change here, just some clarifications:
...
Clarify that contributors are agreeing to license their code under the
license corresponding to the subproject that they are contributing to,
as requested by a potential contributor.
Also, as a drive-by, update the llvm-gcc/GPL section to mention dragonegg
and say that GPL code is all in its own repo's.
llvm-svn: 150065
2012-02-08 07:58:38 +00:00
Chris Lattner
1c0f1d4d1f
add an explicit section on static constructors.
...
llvm-svn: 150037
2012-02-08 01:44:00 +00:00
Bill Wendling
cd6addef26
Rephrase to add clarity.
...
llvm-svn: 149972
2012-02-07 08:42:29 +00:00
Bill Wendling
9e07368007
Document the 'unwind' removal.
...
llvm-svn: 149914
2012-02-06 21:59:44 +00:00
Bill Wendling
c0985aa29f
[unwind removal] Remove any mention of the 'unwind' instruction. What was that
...
instruction anyway?!
llvm-svn: 149913
2012-02-06 21:57:33 +00:00
Devang Patel
bf38fa24e7
Update docs describing objective-c property encoding. This includes support for properties that are not backed by an ivar.
...
llvm-svn: 149879
2012-02-06 18:18:25 +00:00
Bill Wendling
a496f94d12
Mention that the 'unwind' instruction is now deprecated.
...
llvm-svn: 149876
2012-02-06 17:58:34 +00:00
Eli Bendersky
33bdce0fd3
Fix typo and broken link
...
llvm-svn: 149820
2012-02-05 11:17:49 +00:00
Eli Bendersky
9d93af489b
Add missing paren
...
llvm-svn: 149817
2012-02-05 09:21:25 +00:00
Hal Finkel
8cf5de5774
Add a basic-block autovectorization pass.
...
This is the initial checkin of the basic-block autovectorization pass along with some supporting vectorization infrastructure.
Special thanks to everyone who helped review this code over the last several months (especially Tobias Grosser).
llvm-svn: 149468
2012-02-01 03:51:43 +00:00
Dan Gohman
8be3999ea3
basic-aa does support AliasAnalysis chaining now.
...
llvm-svn: 149293
2012-01-30 23:05:41 +00:00
Talin
d6b8c10155
DenseMap::find_as() and unit tests.
...
llvm-svn: 149229
2012-01-30 06:55:43 +00:00
Jim Grosbach
84b2fe36c8
Tidy up. s/Low Level Virtual Machine/LLVM/.
...
LLVM isn't an acronym anymore.
llvm-svn: 148985
2012-01-25 22:00:23 +00:00
Nick Lewycky
ccdb5138b7
Fix broken link.
...
llvm-svn: 148692
2012-01-23 08:47:21 +00:00
Kostya Serebryany
b37a1263e1
Extend Attributes to 64 bits
...
Problem: LLVM needs more function attributes than currently available (32 bits).
One such proposed attribute is "address_safety", which shows that a function is being checked for address safety (by AddressSanitizer, SAFECode, etc).
Solution:
- extend the Attributes from 32 bits to 64-bits
- wrap the object into a class so that unsigned is never erroneously used instead
- change "unsigned" to "Attributes" throughout the code, including one place in clang.
- the class has no "operator uint64 ()", but it has "uint64_t Raw() " to support packing/unpacking.
- the class has "safe operator bool()" to support the common idiom: if (Attributes attr = getAttrs()) useAttrs(attr);
- The CTOR from uint64_t is marked explicit, so I had to add a few explicit CTOR calls
- Add the new attribute "address_safety". Doing it in the same commit to check that attributes beyond first 32 bits actually work.
- Some of the functions from the Attribute namespace are worth moving inside the class, but I'd prefer to have it as a separate commit.
Tested:
"make check" on Linux (32-bit and 64-bit) and Mac (10.6)
built/run spec CPU 2006 on Linux with clang -O2.
This change will break clang build in lib/CodeGen/CGCall.cpp.
The following patch will fix it.
llvm-svn: 148553
2012-01-20 17:56:17 +00:00
Chad Rosier
ce02cd3faa
Fix typo.
...
llvm-svn: 148497
2012-01-19 21:50:08 +00:00
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
Joe Abbey
f61ffb3134
Adding a Hexagon cell for segmented stacks, as they have been implemented for X86 and not Sparc...
...
Committed as obvious
llvm-svn: 148237
2012-01-16 13:16:05 +00:00
Duncan Sands
5a44c5a303
Try to clarify a little how exception handling works.
...
llvm-svn: 148136
2012-01-13 19:59:16 +00:00
Bill Wendling
18abc22050
Revert accidental commit.
...
llvm-svn: 148065
2012-01-12 23:06:28 +00:00
Bill Wendling
ce528914e7
Fix the code that was WRONG.
...
The registers are placed into the saved registers list in the reverse order,
which is why the original loop was written to loop backwards.
llvm-svn: 148064
2012-01-12 23:05:03 +00:00
Eli Bendersky
af558b888a
Fix dead link
...
llvm-svn: 147721
2012-01-07 04:11:27 +00:00
Eli Bendersky
161651f80a
test commit (verifyiing commit access)
...
llvm-svn: 147600
2012-01-05 08:18:41 +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
Eric Christopher
173e9e8cf2
Fix typo.
...
llvm-svn: 147456
2012-01-03 18:38:37 +00:00
Duncan Sands
ec8ede7bf4
Correct spelling.
...
llvm-svn: 147435
2012-01-02 16:55:01 +00:00
NAKAMURA Takumi
ad71e57658
Happy new year 2012!
...
llvm-svn: 147395
2012-01-01 08:16:56 +00:00
Nadav Rotem
7898dcf3bb
Update the LangRef documentation: the codegen does support this instruction.
...
llvm-svn: 147274
2011-12-25 21:32:35 +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
Dan Gohman
9c8c9a8f62
The powers that be have decided that LLVM IR should now support 16-bit
...
"half precision" floating-point with a first-class type.
This patch adds basic IR support (but not codegen support).
llvm-svn: 146786
2011-12-17 00:04:22 +00:00
Eric Christopher
3c533091a7
Fix spacing.
...
llvm-svn: 146782
2011-12-16 23:42:35 +00:00
Eric Christopher
598f7d7c76
Update documentation.
...
llvm-svn: 146781
2011-12-16 23:42:33 +00:00
Devang Patel
59f6d6e2d1
Clarify and fix subprogram description.
...
llvm-svn: 146743
2011-12-16 17:50:04 +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
Evan Cheng
1dcc7d089e
Add high level description of MachineInstr bundles.
...
llvm-svn: 146589
2011-12-14 21:32:14 +00:00
Duncan Sands
1de7ae0e43
Vectors are not aggregate types (see isAggregateType).
...
llvm-svn: 146561
2011-12-14 15:44:20 +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
Bill Wendling
b61c025aa2
Use the example from clang, not the GCC frontend, which doesn't exist anymore.
...
llvm-svn: 146461
2011-12-13 01:07:07 +00:00
Daniel Dunbar
a16a63f190
llvm-build: Switch to using the common subdirectory list instead of
...
autodiscovery.
llvm-svn: 146437
2011-12-12 22:45:59 +00:00
Daniel Dunbar
ecff3756fa
llvm-build: Add sketchy support for preserving comments when using
...
--write-llvmbuild.
llvm-svn: 146434
2011-12-12 22:45:35 +00:00
Tony Linthicum
61adbf8dc5
Hexagon backend support
...
llvm-svn: 146412
2011-12-12 21:14:40 +00:00
Daniel Dunbar
30d6a45140
LLVMBuild: Remove trailing newline, which irked me.
...
llvm-svn: 146409
2011-12-12 19:48:00 +00:00
Chandler Carruth
b0340663fe
Update the LangRef documentation for llvm.ctlz and llvm.cttz to specify
...
the behavior with the newly added flag for undefined results on a zero
input.
I'm terrible at documentation, so comments and suggestions welcome here.
llvm-svn: 146361
2011-12-12 04:36:04 +00:00
Bill Wendling
4f3e4c6380
Random cleanups. No description changes.
...
llvm-svn: 146288
2011-12-09 22:41:40 +00:00
Bill Wendling
5a91169c03
Revert r146041 et al. The FunctionPass doesn't take an address but the ID.
...
llvm-svn: 146268
2011-12-09 19:11:02 +00:00
Chad Rosier
00721ab85b
Typo.
...
llvm-svn: 146234
2011-12-09 02:00:44 +00:00
Bill Wendling
31110c8c27
Also pass in correct initializer here.
...
llvm-svn: 146044
2011-12-07 18:18:11 +00:00
Bill Wendling
e335d0861c
Correct initializer in example.
...
llvm-svn: 146041
2011-12-07 18:02:44 +00:00
Jakub Staszak
1f05c26ed0
Make Release Notes HTML 4.01 Strict.
...
llvm-svn: 145991
2011-12-06 23:33:07 +00:00
Anshuman Dasgupta
d2971cca39
Add documentation for machine-independent DFA packetizer
...
llvm-svn: 145988
2011-12-06 23:12:42 +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
Dan Gohman
02bdcdd326
Fix a subtle semantic issue with poison values that came up in
...
recent discussions. Poison can't make every value that depends on
it act in maximally undefined ways, because the optimizer may still
hoist code following the usual rules for undef. Make Poison invoke
its full undefined behavior only when it reaches an instruction with
externally visible side effects.
llvm-svn: 145913
2011-12-06 03:35:58 +00:00
Dan Gohman
7d881a178c
Line up the comments in a code example.
...
llvm-svn: 145908
2011-12-06 03:31:14 +00:00
Dan Gohman
db3a5dbdb5
Rename "Trap Values" to "Poison Values", to better reflect their
...
purpose, and to avoid ambiguity with other uses of the word "trap"
in LangRef.
llvm-svn: 145907
2011-12-06 03:18:47 +00:00
Bill Wendling
77e127d56f
Move 'returns_twice' definition into alphabetical place.
...
llvm-svn: 145854
2011-12-05 21:27:54 +00:00
Nadav Rotem
1a91e4381d
Add support for vectors of pointers.
...
llvm-svn: 145801
2011-12-05 06:29:09 +00:00
Jakub Staszak
2941ddc16d
Fix table of contents.
...
llvm-svn: 145793
2011-12-04 20:44:25 +00:00
Jakub Staszak
01c388c624
Add 'llvm.expect' intrinsic description.
...
llvm-svn: 145792
2011-12-04 18:29:26 +00:00
Chris Lattner
7592e96900
fix broken tag
...
llvm-svn: 145590
2011-12-01 17:25:28 +00:00
Bill Wendling
a51c3c5a01
More cleanups. No content change.
...
llvm-svn: 145522
2011-11-30 21:52:43 +00:00
Bill Wendling
35f43aae70
Minor cleanup. No content change.
...
llvm-svn: 145521
2011-11-30 21:43:43 +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
Eric Christopher
58dc4573db
Update the docs for some of the test-suite configure changes and
...
be more clear about what to do and how to do it.
llvm-svn: 145426
2011-11-29 19:40:56 +00:00
Rafael Espindola
90c572b822
grammar.
...
llvm-svn: 145423
2011-11-29 19:38:09 +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
Devang Patel
792ac21c3f
Add documentation for llvm-cov.
...
llvm-svn: 145319
2011-11-28 23:39:25 +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
Bill Wendling
8beab76b07
Remove dead llvm.eh.sjlj.dispatchsetup intrinsic.
...
llvm-svn: 145263
2011-11-28 19:23:13 +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
Rafael Espindola
d23ec28d82
Fix spelling/grammar errors found by Duncan.
...
llvm-svn: 145250
2011-11-28 17:06:58 +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
Rafael Espindola
ae1e153b00
Add a description of the status of segmented stacks.
...
llvm-svn: 145201
2011-11-27 22:05:46 +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
28ccd9e18c
fix some out-of-date attribution.
...
llvm-svn: 145197
2011-11-27 21:02:12 +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