Reid Spencer
421475cd3b
For PR780:
...
1. Move IncludeFile.h to System library
2. Move IncludeFile.cpp to System library
3. #1 and #2 required to prevent cyclic library dependencies for libSystem
4. Convert all existing uses of Support/IncludeFile.h to System/IncludeFile.h
5. Add IncludeFile support to various lib/System classes.
6. Add new lib/System classes to LinkAllVMCore.h
All this in an attempt to pull in lib/System to what's required for VMCore
llvm-svn: 29287
2006-07-26 16:18:00 +00:00
Chris Lattner
b7e1ef54af
Fix PR826, testcase here: Regression/Verifier/2006-07-11-StoreStruct.ll
...
llvm-svn: 29112
2006-07-11 20:29:49 +00:00
Chris Lattner
5734e8d7c3
Change the verifier to never throw an exception. Instead verifyModule canoptionally return the string error, which is an easier api for clients touse anyway.
...
llvm-svn: 29017
2006-07-06 18:02:27 +00:00
Chris Lattner
02157b0627
Use hidden visibility to reduce the sizes of some .o files. This chops 60K off a release llvm-dis.
...
llvm-svn: 28969
2006-06-28 21:38:54 +00:00
Chris Lattner
ef13ee3281
csret functions can be varargs (as can target cc's). Verify restrictions on
...
csret functions.
llvm-svn: 28405
2006-05-19 21:25:17 +00:00
Chris Lattner
47a6e63696
remove dead var
...
llvm-svn: 28287
2006-05-14 18:34:36 +00:00
Chris Lattner
38c4cb2f9e
Use the isValidOperands helper instead of duplicating checking code
...
llvm-svn: 27524
2006-04-08 04:07:52 +00:00
Chris Lattner
bbe0a4248b
Add shufflevector support, todo, implement better constant folding.
...
llvm-svn: 27510
2006-04-08 01:18:18 +00:00
Jeff Cohen
e45355218f
Fix build breakage.
...
llvm-svn: 27292
2006-03-31 07:22:05 +00:00
Chris Lattner
b37dfd631c
Add a new method to verify intrinsic function prototypes.
...
llvm-svn: 27282
2006-03-31 04:46:47 +00:00
Chris Lattner
591693f3bf
Use the autogenerated intrinsic verifier
...
llvm-svn: 26667
2006-03-09 22:06:04 +00:00
Chris Lattner
213209a248
remove dbg_declare, it's not used yet.
...
llvm-svn: 26659
2006-03-09 20:02:42 +00:00
Chris Lattner
ad3c974a77
remove the read/write port/io intrinsics.
...
llvm-svn: 26479
2006-03-03 00:19:58 +00:00
Chris Lattner
d124535de1
Split memcpy/memset/memmove intrinsics into i32/i64 versions, resolving
...
PR709, and paving the way for future progress.
Significantly refactor autoupgrading code, to handle the more complex case
(where we upgrade one argument in a function), and fix some bugs in it.
Testcase here: llvm/test/Regression/Bytecode/memcpy.ll
llvm-svn: 26474
2006-03-02 23:58:40 +00:00
Chris Lattner
41eb5cd9c3
Make sure the only user of InlineAsm's are direct calls.
...
llvm-svn: 25626
2006-01-26 00:08:45 +00:00
Reid Spencer
f8592bdea5
Don't accept the ctpop, cttz, or ctlz intrinsics with signed arguments. The
...
interface requires unsigned arguments.
llvm-svn: 25433
2006-01-19 01:20:03 +00:00
Robert Bocchino
ca27f0320b
VMCore support for the insertelement operation.
...
llvm-svn: 25408
2006-01-17 20:07:22 +00:00
Reid Spencer
b4f9a6f110
For PR411:
...
This patch is an incremental step towards supporting a flat symbol table.
It de-overloads the intrinsic functions by providing type-specific intrinsics
and arranging for automatically upgrading from the old overloaded name to
the new non-overloaded name. Specifically:
llvm.isunordered -> llvm.isunordered.f32, llvm.isunordered.f64
llvm.sqrt -> llvm.sqrt.f32, llvm.sqrt.f64
llvm.ctpop -> llvm.ctpop.i8, llvm.ctpop.i16, llvm.ctpop.i32, llvm.ctpop.i64
llvm.ctlz -> llvm.ctlz.i8, llvm.ctlz.i16, llvm.ctlz.i32, llvm.ctlz.i64
llvm.cttz -> llvm.cttz.i8, llvm.cttz.i16, llvm.cttz.i32, llvm.cttz.i64
New code should not use the overloaded intrinsic names. Warnings will be
emitted if they are used.
llvm-svn: 25366
2006-01-16 21:12:35 +00:00
Chris Lattner
087bb703d7
Thanks to Daniel Berlin's ETForest fix, we can now use it again for the verifier
...
llvm-svn: 25345
2006-01-15 21:58:50 +00:00
Chris Lattner
9a7e6c7ae0
ET-Forest has issues with unreachable blocks. Temporarily disable verifiers use
...
of it until they are resolved.
llvm-svn: 25341
2006-01-15 20:00:51 +00:00
Nate Begeman
82049eba2c
Add bswap intrinsics as documented in the Language Reference
...
llvm-svn: 25309
2006-01-14 01:25:24 +00:00
Chris Lattner
c482f16da1
Add recognition and verification of new llvm.stacksave/llvm.stackrestore intrinsics
...
llvm-svn: 25266
2006-01-13 02:15:39 +00:00
Chris Lattner
dc09e40c9d
Convert the verifier over to use ETForest instead of DominatorSet. Patch
...
by Daniel Berlin
llvm-svn: 25242
2006-01-12 06:17:59 +00:00
Robert Bocchino
230044839d
Added support for the extractelement operation.
...
llvm-svn: 25181
2006-01-10 19:05:34 +00:00
Chris Lattner
dca56cbd9a
Get logical operations to like packed types, allow BinOp::getNot to create
...
the right vector of -1's as its operand.
llvm-svn: 24906
2005-12-21 18:22:19 +00:00
Andrew Lenharth
01aa56397d
continued readcyclecounter support
...
llvm-svn: 24300
2005-11-11 16:47:30 +00:00
Andrew Lenharth
9144ec4764
core changes for varargs
...
llvm-svn: 22254
2005-06-18 18:34:52 +00:00
Chris Lattner
2ad5aa8334
Verify that varargs functions all have ccc
...
llvm-svn: 21792
2005-05-08 22:27:09 +00:00
Andrew Lenharth
5e177826fd
Implement count leading zeros (ctlz), count trailing zeros (cttz), and count
...
population (ctpop). Generic lowering is implemented, however only promotion
is implemented for SelectionDAG at the moment.
More coming soon.
llvm-svn: 21676
2005-05-03 17:19:30 +00:00
Chris Lattner
1c636f1118
Add llvm.sqrt intrinsic, patch contributed by Morten Ofstad
...
llvm-svn: 21627
2005-04-30 03:44:07 +00:00
Misha Brukman
b1c9317bb4
Remove trailing whitespace
...
llvm-svn: 21427
2005-04-21 23:48:37 +00:00
Andrew Lenharth
b442791124
First step in adding pcmarker intrinsic. Second step (soon) is adding backend support.
...
llvm-svn: 20900
2005-03-28 20:05:49 +00:00
Chris Lattner
531f9e92d4
This mega patch converts us from using Function::a{iterator|begin|end} to
...
using Function::arg_{iterator|begin|end}. Likewise Module::g* -> Module::global_*.
This patch is contributed by Gabor Greif, thanks!
llvm-svn: 20597
2005-03-15 04:54:21 +00:00
Chris Lattner
39637ef023
Verify llvm.prefetch.
...
llvm-svn: 20376
2005-02-28 19:27:42 +00:00
Chris Lattner
08f7d0c262
Fix some problems where the verifier would crash on invalid input instead of
...
reporting the problem and exiting.
llvm-svn: 20302
2005-02-24 16:58:29 +00:00
Jeff Cohen
c8f1f4bc8e
Use binary mode for reading/writing bytecode files
...
llvm-svn: 19751
2005-01-22 17:36:17 +00:00
Chris Lattner
e340065558
Add a verifier assertion
...
llvm-svn: 18965
2004-12-15 20:23:49 +00:00
Alkis Evlogimenos
be526cfba4
Check if a block has a terminator first before calling front() on
...
it. If a block has a terminator then it is certainly non-empty so the
verifier will not crash on it.
llvm-svn: 18484
2004-12-04 02:30:42 +00:00
Alkis Evlogimenos
b92de19116
Make error msg reflect what exactly went wrong.
...
llvm-svn: 18478
2004-12-04 01:25:06 +00:00
Misha Brukman
8d8fc6529e
The Alpha (tm) intrinsics have never been used anywhere
...
llvm-svn: 17340
2004-10-29 18:43:17 +00:00
Chris Lattner
cde15fb187
Make sure to check select instructions for generic instruction properties
...
llvm-svn: 16597
2004-09-29 21:19:28 +00:00
Chris Lattner
c9e79d005b
Don't use DominatorSet::dominates for intra-block instruction dom checks.
...
This method is linear time in the size of the basic block, which is very
bad for large basic blocks. On the Assembler/2004-09-29-VerifierIsReallySlow.llx
testcase, the verifier changes from taking 50s to 0.23s with this patch.
llvm-svn: 16593
2004-09-29 20:07:45 +00:00
Reid Spencer
7c16caa336
Changes For Bug 352
...
Move include/Config and include/Support into include/llvm/Config,
include/llvm/ADT and include/llvm/Support. From here on out, all LLVM
public header files must be under include/llvm/.
llvm-svn: 16137
2004-09-01 22:55:40 +00:00
Brian Gaeke
0220904e7a
Packed types, brought to you by Brad Jones
...
llvm-svn: 15938
2004-08-20 06:00:58 +00:00
Chris Lattner
001aba76fd
Updates to gc intrinsics, contributed by Tobias Nurmiranta
...
llvm-svn: 15096
2004-07-22 05:50:01 +00:00
Reid Spencer
49fc8a746e
bug 122:
...
- Correct an assert to not have redundant isa<GlobalValue>
llvm-svn: 14934
2004-07-18 00:02:41 +00:00
Reid Spencer
8baf8e270a
- #include <iostream> since its not in Value.h any more.
...
llvm-svn: 14617
2004-07-04 11:55:37 +00:00
Misha Brukman
1c9de4699a
* Capitalize `Java'
...
* Sprinkle hypens liberally
* Fix some grammar in comments
llvm-svn: 14374
2004-06-24 21:47:35 +00:00
Chris Lattner
395e219a1c
Minor cleanup
...
llvm-svn: 14199
2004-06-17 17:56:54 +00:00
Chris Lattner
fbf4dc3bd0
isnan is dead
...
llvm-svn: 14191
2004-06-15 21:52:58 +00:00