Commit Graph

400 Commits

Author SHA1 Message Date
Dan Gohman c828c5465d Extend function-local metadata to be usable as attachments.
llvm-svn: 111895
2010-08-24 02:24:03 +00:00
Bill Wendling 578ee4070c Create the new linker type "linker_private_weak_def_auto".
It's similar to "linker_private_weak", but it's known that the address of the
object is not taken. For instance, functions that had an inline definition, but
the compiler decided not to inline it. Note, unlike linker_private and
linker_private_weak, linker_private_weak_def_auto may have only default
visibility.  The symbols are removed by the linker from the final linked image
(executable or dynamic library).

llvm-svn: 111684
2010-08-20 22:05:50 +00:00
Dan Gohman 093cb79d4b Disallow null as a named metadata operand.
Make MDNode::destroy private.
Fix the one thing that used MDNode::destroy, outside of MDNode itself.

One should never delete or destroy an MDNode explicitly. MDNodes
implicitly go away when there are no references to them (implementation
details aside).

llvm-svn: 109028
2010-07-21 18:54:18 +00:00
Dan Gohman afd69cf5b7 Add support for empty named metadata too. This isn't particularly
useful, but it is nice for consistency.

llvm-svn: 108262
2010-07-13 19:42:44 +00:00
Dan Gohman 1e0213a758 Add support for empty metadata nodes: !{}.
llvm-svn: 108259
2010-07-13 19:33:27 +00:00
Bill Wendling 03bcd6ecc8 Implement the "linker_private_weak" linkage type. This will be used for
Objective-C metadata types which should be marked as "weak", but which the
linker will remove upon final linkage. However, this linkage isn't specific to
Objective-C.

For example, the "objc_msgSend_fixup_alloc" symbol is defined like this:

      .globl l_objc_msgSend_fixup_alloc
      .weak_definition l_objc_msgSend_fixup_alloc
      .section __DATA, __objc_msgrefs, coalesced
      .align 3
l_objc_msgSend_fixup_alloc:
       .quad   _objc_msgSend_fixup
       .quad   L_OBJC_METH_VAR_NAME_1

This is different from the "linker_private" linkage type, because it can't have
the metadata defined with ".weak_definition".

Currently only supported on Darwin platforms.

llvm-svn: 107433
2010-07-01 21:55:59 +00:00
Chris Lattner 58aff8fb57 fix PR7105 by enumerating MDNodes on all @llvm.foo
function calls, not just recognized intrinsics.

llvm-svn: 103428
2010-05-10 20:53:17 +00:00
Chris Lattner 61f3bd6772 add support for zero initialized unions, patch by Tim Northover!
llvm-svn: 99818
2010-03-29 17:36:02 +00:00
Daniel Dunbar 8801b810bb Revert r98666 too; it's checkin-without-testing day!
llvm-svn: 98673
2010-03-16 20:52:59 +00:00
Chris Lattner 5aa4a42c77 temporarily xfail
llvm-svn: 98666
2010-03-16 20:08:07 +00:00
Chris Lattner 392be58cad Add support for a union type in LLVM IR. Patch by Talin!
llvm-svn: 96011
2010-02-12 20:49:41 +00:00
Charles Davis be5557e86b Add a new function attribute, 'alignstack'. It will indicate (when the backends
implement support for it) that the stack should be forcibly realigned in the
prologue (and the process reversed in the epilogue).

llvm-svn: 95945
2010-02-12 00:31:15 +00:00
Chris Lattner 6a7384357f fix bogus test
llvm-svn: 93068
2010-01-09 19:24:18 +00:00
Devang Patel fcfee0ff35 Use separate namespace for named metadata.
llvm-svn: 92931
2010-01-07 19:39:36 +00:00
Devang Patel 6edcd3994c Allow null to be an element of NamedMDNode. e.g. !llvm.stuff = !{!0, !1, null}
llvm-svn: 92783
2010-01-05 21:47:32 +00:00
Chris Lattner 5956dc87d3 add bitcode reader support for blockaddress. We can now fully
round trip blockaddress through .ll and .bc files, so add a testcase.

There are still a bunch of places in the optimizer and other places
that need to be updated to work with these constructs, but at least
the basics are in now.

llvm-svn: 85377
2009-10-28 05:53:48 +00:00
Chris Lattner d04cb6d0fa rename indbr -> indirectbr to appease the residents of #llvm.
llvm-svn: 85351
2009-10-28 00:19:10 +00:00
Chris Lattner 3ed871fe62 add enough support for indirect branch for the feature test to pass
(assembler,asmprinter, bc reader+writer) and document it.  Codegen
currently aborts on it.

llvm-svn: 85274
2009-10-27 19:13:16 +00:00
Chris Lattner 1ed8bb16b8 change of mind :)
llvm-svn: 85258
2009-10-27 17:40:49 +00:00
Chris Lattner 1f8f60e62f rename test.
llvm-svn: 85256
2009-10-27 17:40:19 +00:00
Chris Lattner 022ecf01b3 eliminate md_on_instruction.ll, md_on_instruction2.ll is a superset of it.
llvm-svn: 84464
2009-10-19 05:34:14 +00:00
Nick Lewycky 6f7d8347c1 Add new "memory use marker" intrinsics. These indicate lifetimes and invariant
sections of memory objects.

llvm-svn: 83953
2009-10-13 07:03:23 +00:00
Devang Patel ba4a6fdd17 Parse custom metadata attached with an instruction.
llvm-svn: 83033
2009-09-29 00:01:14 +00:00
Devang Patel af206b8c88 Write and read metadata attachments.
llvm-svn: 82259
2009-09-18 19:26:43 +00:00
Devang Patel dda1ab44e0 A testcase!
llvm-svn: 82176
2009-09-17 23:05:07 +00:00
Dan Gohman 1880092722 Change tests from "opt %s" to "opt < %s" so that opt doesn't see the
input filename so that opt doesn't print the input filename in the
output so that grep lines in the tests don't unintentionally match
strings in the input filename.

llvm-svn: 81537
2009-09-11 18:01:28 +00:00
Chris Lattner bc334dcb91 this test is using invalid "intrinsics".
llvm-svn: 81527
2009-09-11 16:49:18 +00:00
Dan Gohman 22f339010c Use "opt < %s" instead of "opt %s" so that opt doesn't print the test
filename in the output, which interferes with the tests' grep lines.

llvm-svn: 81263
2009-09-08 22:57:49 +00:00
Dan Gohman 72a13d2476 Use opt -S instead of piping bitcode output through llvm-dis.
llvm-svn: 81257
2009-09-08 22:34:10 +00:00
Dan Gohman 9737a63ed8 Change these tests to feed the assembly files to opt directly, instead
of using llvm-as, now that opt supports this.

llvm-svn: 81226
2009-09-08 16:50:01 +00:00
Daniel Dunbar 5e606cb503 Temporary test files should use %t.
llvm-svn: 81086
2009-09-05 12:38:26 +00:00
Dan Gohman 0d4bbf2c4a Remove obsolete -f flags.
llvm-svn: 79992
2009-08-25 15:38:29 +00:00
Devang Patel 16e5124a82 Do not use abbrev while writing NamedMDNode name.
llvm-svn: 77637
2009-07-30 23:06:35 +00:00
Devang Patel 27c87fff7f Read and write NamedMDNode.
llvm-svn: 77517
2009-07-29 22:34:41 +00:00
Devang Patel e059ba6ed2 Derive MDNode from MetadataBase instead of Constant. Emit MDNodes into METADATA_BLOCK in bitcode file.
llvm-svn: 76834
2009-07-23 01:07:34 +00:00
Devang Patel 75bec765c3 Remove empty test.
llvm-svn: 76763
2009-07-22 18:09:11 +00:00
Devang Patel 7428d8acec Introduce MetadataBase, a base class for MDString and MDNode.
Derive MDString directly from MetadataBase. 
Introduce new bitcode block to hold metadata.

llvm-svn: 76759
2009-07-22 17:43:22 +00:00
Devang Patel f04d63a398 Drop "constant" from
!0 = constant metadata !{...}

llvm-svn: 75057
2009-07-08 21:57:07 +00:00
Devang Patel 983c6b1b8f Update SLotTracker to handle MDNode slots.
Simplify MDNode printing.

llvm-svn: 75053
2009-07-08 21:44:25 +00:00
Devang Patel d2541158da Support MDNode forward reference.
llvm-svn: 75031
2009-07-08 19:23:54 +00:00
Devang Patel 461f2bdcbe new test case
llvm-svn: 74633
2009-07-01 19:40:59 +00:00
Devang Patel 39e64d452a Support stand alone metadata syntax.
!0 = constant metadata !{i32 21, i32 22}
@llvm.blah = constant metadata !{i32 1000, i16 200, metadata !0}

llvm-svn: 74630
2009-07-01 19:21:12 +00:00
Devang Patel 2cc6d183b2 Let's ignore MDStrings also!
llvm-svn: 74255
2009-06-26 02:26:12 +00:00
Devang Patel 9d68302e48 No need to code gen MDNodes
llvm-svn: 74150
2009-06-25 00:47:42 +00:00
Dan Gohman 7ccc52f131 Support vector casts in more places, fixing a variety of assertion
failures.

To support this, add some utility functions to Type to help support
vector/scalar-independent code. Change ConstantInt::get and
ConstantFP::get to support vector types, and add an overload to
ConstantInt::get that uses a static IntegerType type, for
convenience.

Introduce a new getConstant method for ScalarEvolution, to simplify
common use cases.

llvm-svn: 73431
2009-06-15 22:12:54 +00:00
Dan Gohman a5b9645c4b Split the Add, Sub, and Mul instruction opcodes into separate
integer and floating-point opcodes, introducing
FAdd, FSub, and FMul.

For now, the AsmParser, BitcodeReader, and IRBuilder all preserve
backwards compatability, and the Core LLVM APIs preserve backwards
compatibility for IR producers. Most front-ends won't need to change
immediately.

This implements the first step of the plan outlined here:
http://nondot.org/sabre/LLVMNotes/IntegerOverflow.txt

llvm-svn: 72897
2009-06-04 22:49:04 +00:00
Nick Lewycky adbc284666 Give embedded metadata its own type instead of relying on EmptyStructTy.
llvm-svn: 72610
2009-05-30 05:06:04 +00:00
Nick Lewycky b8f9b7a965 Make MDNode use CallbackVH. Also change MDNode to store Value* instead of
Constant* in preperation of a future change to support holding non-Constants
in an MDNode.

llvm-svn: 71407
2009-05-10 20:57:05 +00:00
Nick Lewycky 49f891958f Add support for embedded metadata to LLVM. This introduces two new types of
Constant, MDString and MDNode which can only be used by globals with a name
that starts with "llvm." or as arguments to a function with the same naming
restriction.

llvm-svn: 68420
2009-04-04 07:22:01 +00:00
Duncan Sands a09e0afe74 Don't load values out of global constants with weak
linkage: the value may be replaced with something
different at link time.  (Frontends that want to
allow values to be loaded out of weak constants can
give their constants weak_odr linkage).

llvm-svn: 67407
2009-03-20 21:53:29 +00:00
Chris Lattner ac161bff07 Reimplement the old and horrible bison parser for .ll files with a nice
and clean recursive descent parser.

This change has a couple of ramifications:
1. The parser code is about 400 lines shorter (in what we maintain, not
   including what is autogenerated).
2. The code should be significantly faster than the old code because we 
   don't have to work around bison's poor handling of datatypes with 
   ctors/dtors.  This also makes the code much more resistant to memory 
   leaks.
3. We now get caret diagnostics from the .ll parser, woo.
4. The actual diagnostics emited from the parser are completely different
   so a bunch of testcases had to be updated.
5. I now disallow "%ty = type opaque %ty = type i32".  There was no good
   reason to support this, it was just an accident of the old 
   implementation.  I have no reason to think that anyone is actually using
   this.
6. The syntax for sticking a global variable has changed to make it 
   unambiguous.  I don't think anyone is depending on this since only clang
   supports this and it is not solid yet, so I'm not worried about anything
   breaking.
7. This gets rid of the last use of bison, and along with it the .cvs files.
   I'll prune this from the makefiles as a subsequent commit.

There are a few minor cleanups that can be done after this commit (suggestions
welcome!) but this passes dejagnu testing and is ready for its time in the
limelight.

llvm-svn: 61558
2009-01-02 07:01:27 +00:00
Chris Lattner 1d1087113c add testcase for type parsing.
llvm-svn: 61449
2008-12-27 08:10:46 +00:00
Nick Lewycky f5ffcbcd0b Extend the 'noalias' attribute to function return values. This is intended to
indicate functions that allocate, such as operator new, or list::insert. The
actual definition is slightly less strict (for now).

No changes to the bitcode reader/writer, asm printer or verifier were needed.

llvm-svn: 59934
2008-11-24 03:41:24 +00:00
Bill Wendling 33d58e7657 Put CPPBackend tests into their own directory and run them only if they're
supported.

llvm-svn: 53427
2008-07-10 22:35:32 +00:00
Matthijs Kooijman a2f743eaff Fix some escaping and quoting in RUN lines, mainly involving { and <. In two
cases quoting of <{ didn't work out, so I changed the grep to check for }>
instead.

This fixes 7 testcases that were not properly running before.

llvm-svn: 52182
2008-06-10 16:04:47 +00:00
Dan Gohman 5e7863de1b Remove lingering references to .llx and .tr in the tests.
llvm-svn: 51500
2008-05-23 21:15:35 +00:00
Gabor Greif d01c562e48 Eliminate questionable syntax for stdin redirection. This probably also speeds things up a bit.
llvm-svn: 51357
2008-05-20 22:07:21 +00:00
Gabor Greif 1e427c3264 sabre brings to my attention that the 'tr' suffix is also obsolete
llvm-svn: 51349
2008-05-20 21:00:03 +00:00
Gabor Greif f45ff35bfe Rename the last test with .llx extension to .ll, resolve duplicate test by renaming to isnan2. Now that no test has llx ending there is no need to search for them from dg.exp too.
llvm-svn: 51328
2008-05-20 19:52:04 +00:00
Anton Korobeynikov f18ec8b160 Update test
llvm-svn: 50272
2008-04-25 17:54:21 +00:00
Nick Lewycky cd92245311 Start removing 'unwinds to' support from mainline in preparation for 2.3.
llvm-svn: 50086
2008-04-22 05:16:02 +00:00
Dan Gohman b37dab1360 Upgrade these tests for the current intrinsic prototypes.
llvm-svn: 49669
2008-04-14 18:19:18 +00:00
Anton Korobeynikov 72d5d42dbc Support chained aliases for LLVM IR printing. This fixes PR2145
llvm-svn: 48684
2008-03-22 08:17:17 +00:00
Chris Lattner ee8d960ed1 no need to keep around this output.
llvm-svn: 48285
2008-03-12 17:14:06 +00:00
Nick Lewycky fb2c1a999a Turn unwind_to into "unwinds to".
llvm-svn: 48123
2008-03-10 02:20:00 +00:00
Nick Lewycky b2e3c31587 Exercise the new CFG change.
llvm-svn: 47990
2008-03-06 06:55:58 +00:00
Nick Lewycky 8bbec39262 Oops, can't unwind to the entry block (entry block may have no preds).
llvm-svn: 47808
2008-03-02 03:34:55 +00:00
Nick Lewycky 3cc9be0b59 Add an unwind_to field to basic blocks, making them Users instead of Values.
This is the first checkin for PR1269, the new EH infrastructure.

llvm-svn: 47802
2008-03-02 02:48:09 +00:00
Tanya Lattner b7e02fc0bf Remove llvm-upgrade and update tests.
llvm-svn: 47784
2008-03-01 07:38:40 +00:00
Dan Gohman b582867567 Use not instead of ignore when an exit status is expected to always
be non-zero.

llvm-svn: 44866
2007-12-11 15:50:23 +00:00
Duncan Sands ad0ea2d430 Fix PR1146: parameter attributes are longer part of
the function type, instead they belong to functions
and function calls.  This is an updated and slightly
corrected version of Reid Spencer's original patch.
The only known problem is that auto-upgrading of
bitcode files doesn't seem to work properly (see
test/Bitcode/AutoUpgradeIntrinsics.ll).  Hopefully
a bitcode guru (who might that be? :) ) will fix it.

llvm-svn: 44359
2007-11-27 13:23:08 +00:00
Nate Begeman d4d45c268c Add support for vectors to int <-> float casts.
llvm-svn: 44204
2007-11-17 03:58:34 +00:00
Chris Lattner 788f0d340a llvm/test programs should not be execution programs. This
will hopefully fix Gabor's Sparc problem.

llvm-svn: 43251
2007-10-23 17:56:04 +00:00
Dale Johannesen 6480cc6f8c Change all floating constants that are not exactly
representable to use hex format.

llvm-svn: 41722
2007-09-05 17:50:36 +00:00
Chandler Carruth 7132e00de7 This is the patch to provide clean intrinsic function overloading support in LLVM. It cleans up the intrinsic definitions and generally smooths the process for more complicated intrinsic writing. It will be used by the upcoming atomic intrinsics as well as vector and float intrinsics in the future.
This also changes the syntax for llvm.bswap, llvm.part.set, llvm.part.select, and llvm.ct* intrinsics. They are automatically upgraded by both the LLVM ASM reader and the bitcode reader. The test cases have been updated, with special tests added to ensure the automatic upgrading is supported.

llvm-svn: 40807
2007-08-04 01:51:18 +00:00
Dale Johannesen ff4c3be741 Long double, part 1 of N. Support in IR.
llvm-svn: 40774
2007-08-03 01:03:46 +00:00
Dan Gohman 17f68f95d8 Delete the svn:executable property on these files, which aren't executable.
llvm-svn: 40441
2007-07-23 19:26:08 +00:00
Duncan Sands b063fa59d3 The Ada f-e produces various auxiliary output files
that cannot be suppressed and cannot be redirected:
they are dumped in the current working directory.
When running the testsuite this means that these
files do not end up in the Output directory.  The
best solution I could find is to change directory
into Output before running tests.

llvm-svn: 40437
2007-07-23 15:23:35 +00:00
Reid Spencer 314e1cb7ee For PR1553:
Change the keywords for the zext and sext parameter attributes to be 
zeroext and signext so they don't conflict with the keywords for the
instructions of the same name. This gets around the ambiguity.

llvm-svn: 40069
2007-07-19 23:13:04 +00:00
John Criswell 2660cef6d7 Convert .cvsignore files
llvm-svn: 37801
2007-06-29 16:35:07 +00:00
Zhou Sheng 2444a9adeb Commit first round work of PR1373. "noalias" is now fully supported in
VMCore, BitCode, and Assembly. Documentation and test case paramattrs.ll
updated also.

llvm-svn: 37432
2007-06-05 05:28:26 +00:00
Reid Spencer be9b3fce8a Make sure we can round-trip an escaped value in a name.
llvm-svn: 37259
2007-05-19 07:22:24 +00:00
Chris Lattner c57f2187b0 remove libbzip2 from this. This should use llvm-config or something.
llvm-svn: 36879
2007-05-06 19:21:48 +00:00
Anton Korobeynikov b18f8f85e9 Implement review feedback. Aliasees can be either GlobalValue's or
bitcasts of them.

llvm-svn: 36537
2007-04-28 13:45:00 +00:00
Chris Lattner e53e2eeecb not fully implemented yet.
llvm-svn: 36530
2007-04-28 06:02:13 +00:00
Andrew Lenharth a2f93b554d An example for PR1362
llvm-svn: 36484
2007-04-26 19:28:33 +00:00
Anton Korobeynikov a97b694c82 Implement aliases. This fixes PR1017 and it's dependent bugs. CFE part
will follow.

llvm-svn: 36435
2007-04-25 14:27:10 +00:00
Reid Spencer 6e87ec4351 For PR1319:
Remove && from the end of the lines to prevent tests from throwing run
lines into the background. Also, clean up places where the same command
is run multiple times by using a temporary file.

llvm-svn: 36142
2007-04-16 17:36:08 +00:00
Reid Spencer 3fc53d6c53 Changes to fix problems with "make check". Apparently you can redefine
functions and Tcl's just tickled with that. The fix is to give the "new"
test system a different interface function name.

llvm-svn: 36022
2007-04-14 22:51:29 +00:00
Reid Spencer 71d3ab5e62 Try some alternative syntax.
llvm-svn: 36018
2007-04-14 22:27:05 +00:00
Reid Spencer 64f7a5ea86 Simplify this test and correct redirection for Tcl exec.
llvm-svn: 36001
2007-04-14 17:49:06 +00:00
Reid Spencer 437520719e For PR1319:
Changes necessary for conversion of this directory to run the tests
under the llvm.exp version of llvm_runtest

llvm-svn: 35993
2007-04-14 16:40:08 +00:00
Reid Spencer e105f3f4c4 Fix a missing -f that the new llvm.exp found.
llvm-svn: 35988
2007-04-14 09:45:16 +00:00
Reid Spencer f7396d1c11 Fix a missing -f caught by the new llvm.exp script.
llvm-svn: 35987
2007-04-14 09:43:30 +00:00
Chris Lattner ce10cd22c8 vector compares aren't allowed. It doesn't make sense to have an xfailed
test to remind us of this.

llvm-svn: 35949
2007-04-12 18:21:52 +00:00
Reid Spencer b817ba74f1 The hello pass actually requires a function to chew on!
llvm-svn: 35937
2007-04-12 01:12:54 +00:00
Reid Spencer d646073027 Fix a guard that is supposed to guard against mistakes like this patch fixes!
We *really* need to be running these with tcl's "exec" to catch the errors.

llvm-svn: 35928
2007-04-11 22:40:46 +00:00
Reid Spencer 45fc9400ad The "Hello" message is written on stderr so make sure it is duplicated to
stdout so the grep can match it.

llvm-svn: 35925
2007-04-11 21:30:05 +00:00
Reid Spencer 5f89562811 Add a test case for PR1318.
llvm-svn: 35923
2007-04-11 21:14:53 +00:00
Reid Spencer 645d5a9f4f Use the new %link variable to make this test portable.
llvm-svn: 35921
2007-04-11 21:00:00 +00:00
Reid Spencer d029c7e666 Make the llvm-runtest function much more amenable by eliminating all the
global variables that needed to be passed in. This makes it possible to
add new global variables with only a couple changes (Makefile and llvm-dg.exp)
instead of touching every single dg.exp file.

llvm-svn: 35918
2007-04-11 19:56:59 +00:00
Reid Spencer f29754c7b9 Add a test case for testing basic IR features via llvm2cpp. This helps find
bit rot in llvm2cpp and also tests the LLVM C++ IR in ways that llvm-as
doesn't.

llvm-svn: 35917
2007-04-11 19:54:37 +00:00
Reid Spencer 669c7e58b0 Make sure upgrade doesn't fail on this.
llvm-svn: 35916
2007-04-11 19:36:27 +00:00
Reid Spencer 7a311b86e1 Upgrade this file completely instead of downgrading it. Make sure that
false positives aren't made.

llvm-svn: 35913
2007-04-11 17:51:03 +00:00
Reid Spencer f4fd92907e Make sure this test uses llvm-upgrade.
Don't allow false positives.

llvm-svn: 35900
2007-04-11 12:46:06 +00:00
Reid Spencer e165d7c3d7 Fix to not give false positives.
llvm-svn: 35895
2007-04-11 12:04:33 +00:00
Reid Spencer c3d87685ad For PR1297:
Update these test cases to use proper signatures for bswap which is now
and overloaded intrinsic. Its name must be of the form llvm.bswap.i32.i32
since both the parameter and the result or of type "iAny". Also, the
bit counting intrinsics changed to always return i32.

llvm-svn: 35548
2007-04-01 07:36:28 +00:00
Reid Spencer 44259a29c0 Remove use of implementation keyword.
llvm-svn: 35412
2007-03-28 02:38:26 +00:00
Reid Spencer 8f0bcc6b89 Add tests for nounwind and noreturn function attributes.
llvm-svn: 35261
2007-03-22 02:15:17 +00:00
Reid Spencer af6a408117 For PR411:
Update these tests to not use the same name even though the type of the
value differs. After PR411 hits, type planes will be gone and it will be
illegal for a name to be used twice, regardless of type.

llvm-svn: 33660
2007-01-30 16:16:01 +00:00
Reid Spencer ce380568b5 For PR761:
Remove "target endian/pointersize" or add "target datalayout" to make
the test parse properly or set the datalayout because defaults changes.

For PR645:
Make global names use the @ prefix.

For llvm-upgrade changes:
Fix test cases or completely remove use of llvm-upgrade for test cases
that cannot survive the new renaming or upgrade capabilities.

llvm-svn: 33533
2007-01-26 08:25:06 +00:00
Andrew Lenharth 25ac8676ca Packed structs use packed struct initializers
llvm-svn: 33014
2007-01-08 18:15:35 +00:00
Reid Spencer 968a5290f3 Redefinition of functions is no longer permitted.
llvm-svn: 33000
2007-01-07 19:33:49 +00:00
Reid Spencer f7d59e282d For PR1077:
Remove the XFAIL now that global redefinitions are not permitted.

llvm-svn: 32935
2007-01-05 21:51:57 +00:00
Reid Spencer 6acdd1973d Fix the test case for the change in parameter attribute syntax. The @ is
no longer needed and the @(...) syntax has been dropped in favor of a
simple space separated list of attribute names.

llvm-svn: 32911
2007-01-05 17:26:04 +00:00
Reid Spencer 6bcc22ce57 For PR1077:
Split this test case into three cases. globalredefinition.ll just tests
that a global can be forward referenced. globalredefinition2.ll tests
that llvm-upgrade will warn about renaming duplicate global variables.
globalredefinition3.ll tests that llvm-as will generate an error on
duplicate global variables. This last test is currently XFAIL because
the restriction is not implemented yet.

llvm-svn: 32910
2007-01-05 17:25:12 +00:00
Reid Spencer fc899e6f74 For PR1077:
Global variable definitions with the same name and same type are no longer
valid so don't attempt to test for this "feature".

llvm-svn: 32909
2007-01-05 17:22:13 +00:00
Reid Spencer 1434f95410 XFAIL this test until such time that code gen can handle a comparison of
packed types.

llvm-svn: 32863
2007-01-04 03:06:23 +00:00
Reid Spencer 836567a9d8 Add a test to ensure that we can assembly comparisons of packed values.
llvm-svn: 32854
2007-01-04 00:29:09 +00:00
Reid Spencer 6fb16b1bce Test @zext and @sext fully as well as testing the "short" call syntax.
llvm-svn: 32851
2007-01-04 00:03:37 +00:00
Reid Spencer 724ffc6cd0 Add a test case to test parameter attributes feature.
llvm-svn: 32850
2007-01-03 23:54:02 +00:00
Reid Spencer 399b10a48c Run llvm-upgrade on test to prepare for new assembly syntax.
llvm-svn: 32769
2006-12-29 20:21:51 +00:00
Reid Spencer 21278e9932 Add some tests for negative constants to unsigned and large positive
constants to signed.

llvm-svn: 32717
2006-12-20 17:27:58 +00:00
Reid Spencer 0e60d55519 Add a couple little tests for SExt/ZExt of constants of a sign that doesn't
match.

llvm-svn: 32647
2006-12-18 01:11:46 +00:00
Reid Spencer 0fdba212a7 Add a test for constant folding of bitcast to/from floating point.
llvm-svn: 32446
2006-12-11 21:25:10 +00:00
Andrew Lenharth ae5733ba6a packed initializers too in the test
llvm-svn: 32365
2006-12-08 18:45:38 +00:00
Andrew Lenharth 23469cca1a feature test for packed structs
llvm-svn: 32363
2006-12-08 18:36:24 +00:00
Reid Spencer 7d4eb03ceb Remove old intrinsic declarations and usage.
llvm-svn: 32129
2006-12-02 20:30:20 +00:00
Reid Spencer 9d91281573 Remove a redundant RUN: line.
llvm-svn: 32126
2006-12-02 17:49:38 +00:00
Reid Spencer d0e30dc5be Use the llvm-upgrade program to upgrade llvm assembly.
llvm-svn: 32115
2006-12-02 04:23:10 +00:00
Reid Spencer 6c38f0bb07 For PR950:
The long awaited CAST patch. This introduces 12 new instructions into LLVM
to replace the cast instruction. Corresponding changes throughout LLVM are
provided. This passes llvm-test, llvm/test, and SPEC CPUINT2000 with the
exception of 175.vpr which fails only on a slight floating point output
difference.

llvm-svn: 31931
2006-11-27 01:05:10 +00:00
Reid Spencer 3c3324c7fa Fix some typos.
llvm-svn: 31897
2006-11-23 16:45:52 +00:00
Reid Spencer 0e43e15fc9 Promote GEP ubyte indices to uint. Backwards compatibility for 1.2 and
older features will be dropped soon and these test cases must not rely
on the upgrade capability.

llvm-svn: 31896
2006-11-23 15:14:52 +00:00
Reid Spencer 497120ef63 Fix a problem where dejagnu won't accept the value of global tcl variable
"libdir" for some reason. Changing to llvmlibsdir instead fixes it.

llvm-svn: 28526
2006-05-28 07:22:42 +00:00
Reid Spencer 633301acea Provide an infrastructure for testing the llvm2cpp program (yet to be
committed). This infrastructure is only activated when RUNLLVM2CPP=1 is
specified on the make command line. Currently it is only supported in the
Feature test suite.

llvm-svn: 28525
2006-05-28 04:21:40 +00:00
Chris Lattner c4e9aff50f new testcase for csretcc
llvm-svn: 28413
2006-05-19 22:00:54 +00:00
Tanya Lattner 27fba1761d Added the ability to xfail based on llvmgcc version
llvm-svn: 27635
2006-04-12 21:57:40 +00:00
Chris Lattner a348351da3 new testcase for shufflevector
llvm-svn: 27508
2006-04-08 01:17:42 +00:00
Reid Spencer edde6be3d8 Tired of wading through cvs's list ? files that are generated when building
with srcdir = objdir to see what's okay and what's cruft. So, in goes a
bunch of .cvsignore files to shut cvs up about known output from running
"make check".

llvm-svn: 27009
2006-03-23 23:41:57 +00:00
Chris Lattner 3ccaf6ecb0 new tests for actual inline asm expressions
llvm-svn: 25625
2006-01-25 23:49:54 +00:00
Chris Lattner a1280ad4d9 minor syntax change
llvm-svn: 25566
2006-01-24 00:37:20 +00:00
Chris Lattner 243f7296e5 new testcase
llvm-svn: 25562
2006-01-23 23:24:13 +00:00
Reid Spencer e64af05eed Expand test to cover the non-overloaded variants of the arithmetic and
floating point intrinsics.

llvm-svn: 25431
2006-01-19 01:17:06 +00:00
Robert Bocchino 1763a44ac2 Test case for the insertelement operation.
llvm-svn: 25409
2006-01-17 20:07:30 +00:00
Chris Lattner 13d1474d43 new testcase for extractelement instruction
llvm-svn: 25186
2006-01-10 20:00:20 +00:00
Chris Lattner d6f99000e6 new testcase
llvm-svn: 24310
2005-11-12 00:10:02 +00:00
Chris Lattner cc99ec2a14 add alignment info for globals and functions
llvm-svn: 24213
2005-11-06 06:52:11 +00:00
Chris Lattner 6ce0ad3f74 new testcase
llvm-svn: 24202
2005-11-05 22:07:30 +00:00
Reid Spencer ef0d7c6af6 Fix this test case to actually test the new va_arg instruction not the
old vaarg instruction.

llvm-svn: 22256
2005-06-18 20:27:32 +00:00
Andrew Lenharth 435054cd1b new vararg test
llvm-svn: 22252
2005-06-18 18:30:37 +00:00
Reid Spencer 3992dbd2a0 Add note to self to complete the testing of all intrinsic functions as
specified in the LangRef document.

llvm-svn: 21807
2005-05-09 04:47:32 +00:00
Chris Lattner f71853e277 new testcase
llvm-svn: 21750
2005-05-06 22:33:44 +00:00
Chris Lattner 2c9a46e758 test that tail call survives bytecodification
llvm-svn: 21728
2005-05-06 06:18:33 +00:00
Andrew Lenharth 38cc7bacb4 yea yea yea
llvm-svn: 21673
2005-05-03 17:00:48 +00:00
Andrew Lenharth bf50ff58ae pre add count tests
llvm-svn: 21671
2005-05-03 16:49:48 +00:00
Chris Lattner 02f0d7bcc9 This file is all commented out.
llvm-svn: 20454
2005-03-05 17:28:37 +00:00
Chris Lattner 5d43cbc6ac Add a test for llvm.prefetch.
llvm-svn: 20379
2005-02-28 19:31:42 +00:00
Alkis Evlogimenos 5b9754bd48 Update testcase
llvm-svn: 18742
2004-12-10 05:39:57 +00:00
Chris Lattner dfabbb29f2 Simple testcase for quoted label.
llvm-svn: 18740
2004-12-10 05:27:14 +00:00
Reid Spencer ab8bf46913 Test floating point constants
llvm-svn: 18045
2004-11-20 07:29:51 +00:00
Tanya Lattner f1e4bf5b66 Adding srcdir arg
llvm-svn: 18020
2004-11-19 22:45:25 +00:00
Tanya Lattner 5f06ac1762 Fix for objdir != srcdir.
llvm-svn: 17597
2004-11-07 23:24:21 +00:00
Tanya Lattner 84f7fda32f Added RUN lines and dejagnu support for Feature dir.
llvm-svn: 17568
2004-11-07 06:08:43 +00:00
Chris Lattner aef20fbbb9 testcases for undefined and unreachable
llvm-svn: 17058
2004-10-16 18:24:11 +00:00
Reid Spencer b6388f725e Added a test case for packed types. Test case kindly provided by Brad Jones
llvm-svn: 15939
2004-08-20 06:02:24 +00:00
Reid Spencer 8c1f5c5c64 bug 263:
Add target triple and dependent libraries support to this test.

llvm-svn: 15213
2004-07-25 18:09:47 +00:00
Chris Lattner 969d6fbcee You cannot pass functions by value, what does that even mean??
llvm-svn: 14833
2004-07-14 23:14:07 +00:00
Chris Lattner 7e40f4f9c5 New, horrible, testcase
llvm-svn: 14829
2004-07-14 22:59:47 +00:00
Chris Lattner 75bcc59f1c Right, stop being silly
llvm-svn: 14184
2004-06-15 21:29:40 +00:00
Chris Lattner ce4ac095f0 Add a nan, stop testing isnan
llvm-svn: 14183
2004-06-15 21:29:01 +00:00
Alkis Evlogimenos 9d740629a0 Add the isunordered intrinsic.
llvm-svn: 14159
2004-06-12 19:19:14 +00:00
Chris Lattner 8f40e35934 I misled Alkis: LLVM should have isnan, not isunordered.
isunordered(X, Y) === isnan(X) | isnan(Y)

Remove isunordered, add isnan.

Modernize testcase

llvm-svn: 14133
2004-06-11 02:29:57 +00:00
Alkis Evlogimenos 2baa85e8be Add feature test for llvm intrinsics. It currently contains only the "isunordered" intrinsic
llvm-svn: 14126
2004-06-11 01:06:40 +00:00
Chris Lattner 7231f7c431 Update test to new style
llvm-svn: 9327
2003-10-21 15:36:21 +00:00
John Criswell f6e32a4164 These scripts are no longer needed. They have been replaced by QMTest.
llvm-svn: 8929
2003-10-07 19:07:00 +00:00
John Criswell ca9987ef30 Moved wierdnames.ll to weirdnames.ll. The new name is spelled correctly.
llvm-svn: 8711
2003-09-25 17:44:32 +00:00
John Criswell 0638e4d64a Removing Makefile. The QMTest program now handles the running of these tests.
llvm-svn: 8547
2003-09-15 20:18:06 +00:00
Chris Lattner 88052abce8 New testcase for non-simple variable and type names
llvm-svn: 8048
2003-08-22 05:40:04 +00:00
Chris Lattner 37d4db2e7b Add test for new zeroinitializer token
llvm-svn: 6936
2003-06-28 20:01:03 +00:00
Chris Lattner 33993642f6 Remove obsolete support for LD_LIBRARY_PATH
llvm-svn: 6815
2003-06-20 23:01:23 +00:00
John Criswell 79915272fd Updated to the new Makefile.common.
llvm-svn: 6814
2003-06-20 21:37:31 +00:00
John Criswell fdad6ce774 The modifications to LD_LIBRARY_PATH now add the specified paths to the
beginning of LD_LIBRARY_PATH as opposed to simply replacing it.
This allows users to use LD_LIBRARY_PATH when running tests (useful for
when they have installed their own version of GCC).

llvm-svn: 6800
2003-06-20 16:14:49 +00:00
Chris Lattner 947b0daccd Fix to mesh with Johns recent changes
llvm-svn: 6754
2003-06-17 20:55:04 +00:00
Chris Lattner ff32eea8f2 Test the whole range of varargs handling stuff
llvm-svn: 6034
2003-05-08 03:46:51 +00:00
Chris Lattner 0badea6a94 New testcase
llvm-svn: 6025
2003-05-08 02:39:37 +00:00
Chris Lattner f234e9975a Add testcase for target information
llvm-svn: 5842
2003-04-22 19:06:48 +00:00
Chris Lattner 8b6d5c58ae ADd newline to end of file
llvm-svn: 5841
2003-04-22 18:43:23 +00:00
Chris Lattner 2bee86d9df Add a simple test for hex constant integers
llvm-svn: 5803
2003-04-17 22:19:23 +00:00
Chris Lattner 90677c51c7 Fix testcase
llvm-svn: 5746
2003-03-18 22:53:19 +00:00
Chris Lattner 8ec8b2547f - Cleaned up all of the test/Feature tests to not use uint's with
getelementptr instructions and not to add pointers.

llvm-svn: 4049
2002-10-06 22:43:49 +00:00
Chris Lattner fa3f55cfaa Remove old crusty test
llvm-svn: 4048
2002-10-06 22:35:56 +00:00
Chris Lattner ee67e9ae51 Test "external" modifier on global variable
Fix getelementptr instruction to use long isntead of uint index

llvm-svn: 4047
2002-10-06 22:32:38 +00:00
Chris Lattner 33a01ef11d Covnert tests to not use indexed load/stores
llvm-svn: 3454
2002-08-22 16:04:03 +00:00
Chris Lattner d606c82005 Test the C backend on all of the feature tests as well.
llvm-svn: 3437
2002-08-21 23:52:15 +00:00
Chris Lattner d0ded9899b Fix typo
llvm-svn: 3361
2002-08-16 19:34:33 +00:00
Chris Lattner e9e30c6b5a Convert constexpr over to new syntax
llvm-svn: 3359
2002-08-15 21:14:39 +00:00
Chris Lattner dbeb10fce0 Make 'features' testsuite work with the /shared changes.
llvm-svn: 3357
2002-08-15 19:49:06 +00:00
Chris Lattner 39c284caf7 Convert testcase to use correct syntax
llvm-svn: 3356
2002-08-15 19:48:48 +00:00
Chris Lattner 6bb917f083 Remove invokation of cleangcc pass which has been renamed, and is unneccesary anyway
llvm-svn: 3159
2002-07-30 18:01:06 +00:00
Chris Lattner c5aa75ffa7 New testcase
llvm-svn: 3022
2002-07-23 18:21:12 +00:00