Commit Graph

3735 Commits

Author SHA1 Message Date
Nick Lewycky
29b6cb40c1 Make @llvm.invariant.start not be readonly, so that it has side-effects. This
unbreaks test/Transforms/InstCombine/invariant.ll which was broken by r120382.
This is a fix-forward to do what I think Chris intended.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120388 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-30 04:13:41 +00:00
Oscar Fuentes
d1627e331f Bump required cmake version on CMake.html.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120162 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-25 21:41:48 +00:00
Zhanyong Wan
cafe0b4e1f Fix formatting nits in the coding standards. Reviewed by clattner.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119998 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-23 05:03:07 +00:00
Wesley Peck
bf17cfa3f9 Renaming ISD::BIT_CONVERT to ISD::BITCAST to better reflect the LLVM IR concept.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119990 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-23 03:31:01 +00:00
Chris Lattner
a6fd81dd7f a byval argument without an align can have an arbitrary alignment
requirement on the input pointer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119914 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-20 23:49:06 +00:00
Chris Lattner
eddd96901e add some justification for "using namespace llvm;"
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119544 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-17 19:47:20 +00:00
Chris Lattner
684cf814c7 various cleanups and other improvements, patch by Zhanyong Wan!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119515 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-17 17:14:55 +00:00
Chris Lattner
ce1b9ad539 With the newly simplified SourceMgr interfaces and the generalized
SrcMgrDiagHandler, we can improve clang diagnostics for inline asm:
instead of reporting them on a source line of the original line,
we can report it on the correct line wherever the string literal came
from. For something like this:

void foo() {
  asm("push %rax\n"
      ".code32\n");
}

we used to get this: (note that the line in t.c isn't helpful)

t.c:4:7: error: warning: ignoring directive for now
  asm("push %rax\n"
      ^
<inline asm>:2:1: note: instantiated into assembly here
.code32
^

now we get:

t.c:5:8: error: warning: ignoring directive for now
      ".code32\n"
       ^
<inline asm>:2:1: note: instantiated into assembly here
.code32
^

Note that we're pointing to line 5 properly now.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119488 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-17 08:20:42 +00:00
Chris Lattner
221b239342 update coding standards. Partial specialization is now ok,
though possibly not a good idea.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119398 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16 22:19:06 +00:00
Chris Lattner
ac139f19d9 libc++ and compiler_rt are now dual licensed under UIUC and MIT license.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119387 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16 21:32:53 +00:00
Peter Collingbourne
5a0a7ced12 Document -enable-no-infs-fp-math and -enable-no-nans-fp-math command line options
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119370 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16 19:40:13 +00:00
Dan Gohman
ab7fa0885e Fix missing includes of "llvm/Analysis/Passes.h" in the tutorials. Thanks
for Arnaud Allard de Grandmaison for preparing a patch.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119351 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-16 17:28:22 +00:00
Dan Gohman
dfa1a79b0c Update examples and documentation to explicitly add basicaa, now that it's
no longer included by default.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119169 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-15 18:41:10 +00:00
Dan Gohman
c66712f632 -basicaa is no longer the default.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119163 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-15 18:07:16 +00:00
Chris Lattner
ac3031aa09 no alpha jit support.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@119052 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-14 18:25:50 +00:00
Chris Lattner
97928d136a describe the preferred approach to silencing 'unused variable warnings' due to asserts.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118863 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-12 00:19:41 +00:00
NAKAMURA Takumi
e7ae70b137 CMake: Add the new option "LLVM_LIT_ARGS".
Defaults:
if (MSVC OR XCODE): "-sv --no-progress-bar"
else: "-sv"

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118776 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-11 04:09:35 +00:00
Devang Patel
40d438e20a Document debuginfo-tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118746 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-11 00:13:39 +00:00
Chris Lattner
90fd797dc7 add (and document) the ability for alias results to have
fixed physical registers.  Start moving fp comparison
aliases to the .td file (which default to using %st1 if
nothing is specified).


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118352 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-06 19:57:21 +00:00
Chris Lattner
98c870f87b generalize alias support to allow the result of an alias to
add fixed immediate values.  Move the aad and aam aliases to
use this, and document it.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118350 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-06 19:25:43 +00:00
Chris Lattner
c7a03fbe66 document instalias.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118335 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-06 08:30:26 +00:00
Duncan Sands
e3f75a3979 Fix typo, pointed out by Trevor Harmon.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118163 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-03 08:16:50 +00:00
Chris Lattner
9372fd3c92 fix typo, patch by Trevor Harmon (PR8537)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118131 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-03 00:30:29 +00:00
Oscar Fuentes
36958599a8 Removed obsolete section about VC++ project files.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@118072 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-02 21:34:19 +00:00
Chris Lattner
150d20e8fc fix the !eq operator in tblgen to return a bit instead of an int.
Use this to make the X86 and ARM targets set isCodeGenOnly=1 
automatically for their instructions that have Format=Pseudo,
resolving a hack in tblgen.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117862 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-31 19:22:57 +00:00
Benjamin Kramer
943beeb747 Validate HTML.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117847 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-30 21:07:28 +00:00
Chris Lattner
50e5972dc6 add missing tag
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117846 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-30 20:21:00 +00:00
Chris Lattner
8cf8bcc40c fix typos and some serious bugs in feature handling (but not for
cases that are currently exercised).  Thanks to Frits van Bommel for
the great review!


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117840 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-30 19:47:49 +00:00
Chris Lattner
693173feef Implement (and document!) support for MnemonicAlias's to have Requires
directives, allowing things like this:

def : MnemonicAlias<"pop", "popl">, Requires<[In32BitMode]>;
def : MnemonicAlias<"pop", "popq">, Requires<[In64BitMode]>;

Move the rest of the X86 MnemonicAliases over to the .td file.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117830 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-30 19:23:13 +00:00
Chris Lattner
674c1dcca2 implement (and document!) the first kind of MC assembler alias, which
just remaps one mnemonic to another.  Convert a few of the X86 aliases
from .cpp to .td code.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117815 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-30 17:36:36 +00:00
Oscar Fuentes
da9756365b Document LLVM_BUILD_TESTS, LLVM_INCLUDE_TESTS. New convenience target
UnitTests for building all the unit tests.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117545 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-28 14:38:35 +00:00
Chris Lattner
219ddf5626 clarify that not having the ".o file writing" feature
doesn't mean that you can't get a .o file.  Apparently
this is confusing :)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117523 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-28 02:22:02 +00:00
Bill Wendling
1b383ba6ae Random cleanups and format changes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117428 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-27 01:07:41 +00:00
Duncan Sands
ff91d1a4d8 Yet another thing that was forgotten to be added to the release notes...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117362 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-26 12:43:36 +00:00
Charles Davis
0076d2057c Make the description of the hotpatch attribute even more generic. Spotted by
Michael Spencer.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117286 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-25 19:07:39 +00:00
Charles Davis
6f12e29f7d Make hotpatch attribute description a little less Wintel-specific.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117267 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-25 16:29:03 +00:00
Charles Davis
970bfcc7d8 Add a new 'hotpatch' attribute. This attribute will insert a two-byte no-op
instruction at the beginning of each function that has the attribute, allowing
the function to be easily hooked and/or patched.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117264 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-25 15:37:09 +00:00
Kalle Raiskila
94cc4feeaf Update target feature matrix for CellSPU
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117255 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-25 08:57:30 +00:00
Jakob Stoklund Olesen
4e13612ea7 Update target feature matrix for Blackfin.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117245 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-24 20:04:05 +00:00
Wesley Peck
c6a4524717 Updating target feature matrix to indicate current MBlaze status.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117244 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-24 18:50:12 +00:00
Chris Lattner
6fb99559e4 broken link
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117232 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-24 16:24:22 +00:00
Chris Lattner
68de602ff6 add a big table with target features.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117230 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-24 16:18:00 +00:00
Peter Collingbourne
ed50d38553 Standardise all build-mode affecting {EN,DIS}ABLE_* make options to
test equality to 1, and fix/update documentation to reflect this

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117094 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-22 12:54:34 +00:00
Tobias Grosser
0305724b9f Fix type in passes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117065 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-21 21:16:03 +00:00
Duncan Sands
db732280a1 Argh, completely forgot to add this to the release notes!
Better late than never, right?


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@117009 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-21 14:40:02 +00:00
Tobias Grosser
6551360535 Add RegionPass support.
A RegionPass is executed like a LoopPass but on the regions detected by the
RegionInfo pass instead of the loops detected by the LoopInfo pass.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116905 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-20 01:54:44 +00:00
Jim Grosbach
e4ad387a5a Add a pre-dispatch SjLj EH hook on the unwind edge for targets to do any
setup they require. Use this for ARM/Darwin to rematerialize the base
pointer from the frame pointer when required. rdar://8564268

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116879 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-19 23:27:08 +00:00
Jakob Stoklund Olesen
824c10ece2 Teach FileCheck to handle trailing CHECK-NOT patterns.
A CHECK-NOT pattern without a following CHECK pattern simply checks that the
pattern doesn't match before the end of the input file.

You can even have only CHECK-NOT patterns to check that strings appear nowhere
in the input file.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116592 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-15 17:47:12 +00:00
Chris Lattner
60cb528246 Per discussion with Sanjiv, remove the PIC16 target from mainline. When/if
it comes back, it will be largely a rewrite, so keeping the old codebase
in tree isn't helping anyone.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116190 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-11 05:44:40 +00:00
Chris Lattner
7d2e7bef90 clarify that zero sized vectors are illegal, PR8340
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116167 91177308-0d34-0410-b5e6-96231b3b80d8
2010-10-10 18:20:35 +00:00