Commit Graph

198 Commits

Author SHA1 Message Date
Dan Gohman
064a57a77d Don't redirect stderr when it isn't needed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45033 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-14 15:15:11 +00:00
Anders Carlsson
d04764a8ac All MMX shift instructions took a <2 x i32> vector as the shift amount parameter. Change this to be <1 x i64> instead, which matches the assembler instruction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45027 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-14 06:38:54 +00:00
Christopher Lamb
d49e18d29f Implement part of review feedback for address spaces.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44933 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-12 08:44:39 +00:00
Dan Gohman
83935ac59d Use not instead of ignore when an exit status is expected to always
be non-zero.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44866 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-11 15:50:23 +00:00
Dan Gohman
131c60ab9c Don't redirect stderr when it isn't needed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44865 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-11 15:41:11 +00:00
Christopher Lamb
fe63fb986d Implement address space attribute for LLVM pointer types. Address spaces are
regions of memory that have a target specific relationship, as described in the 
Embedded C Technical Report. 

This also implements the 2007-12-11-AddressSpaces test, 
which demonstrates how address space attributes can be used in LLVM IR.

In addition, this patch changes the bitcode signature for stores (in a backwards 
compatible manner), such that the pointer type, rather than the pointee type, is 
encoded. This permits type information in the pointer (e.g. address space) to be 
preserved for stores.

LangRef updates are forthcoming.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44858 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-11 08:59:05 +00:00
Chris Lattner
f286f6fd93 Fix PR1850 by removing an unsafe transformation from VMCore/ConstantFold.cpp.
Reimplement the xform in Analysis/ConstantFolding.cpp where we can use
targetdata to validate that it is safe.  While I'm in there, fix some const
correctness issues and generalize the interface to the "operand folder".


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44817 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-10 22:53:04 +00:00
Gordon Henriksen
80a75bfae9 Adding a collector name attribute to Function in the IR. These
methods are new to Function:

  bool hasCollector() const;
  const std::string &getCollector() const;
  void setCollector(const std::string &);
  void clearCollector();

The assembly representation is as such:

  define void @f() gc "shadow-stack" { ...

The implementation uses an on-the-side table to map Functions to 
collector names, such that there is no overhead. A StringPool is 
further used to unique collector names, which are extremely
likely to be unique per process.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44769 91177308-0d34-0410-b5e6-96231b3b80d8
2007-12-10 03:18:06 +00:00
Tanya Lattner
727842e9d7 Fix bug in regression tests that ignored stderr output in RUN lines. Updated tests and fixed broken run lines.
XFAILed 3 arm regressions (will file bugs)


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44389 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-28 04:57:00 +00:00
Duncan Sands
dc024674ff 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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44359 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-27 13:23:08 +00:00
Dan Gohman
08e581eda7 Don't redirect llvm-as's stderr to llvm-dis.
Change grep '' to grep {}.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44343 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-27 00:07:33 +00:00
Chris Lattner
e543424d9a Fix PR1645 by resolving forward alias references.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41815 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-10 23:23:53 +00:00
Dale Johannesen
c2ec2baf3d Change all floating constants that are not exactly
representable to use hex format.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41722 91177308-0d34-0410-b5e6-96231b3b80d8
2007-09-05 17:50:36 +00:00
Dan Gohman
28beeeac4d Convert tests using "| wc -l | grep ..." to use the count script.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41097 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-15 13:36:28 +00:00
Chris Lattner
6df20efcc3 Fix PR1577, a crash on invalid bug.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40874 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-06 21:00:37 +00:00
Chandler Carruth
6994040a95 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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40807 91177308-0d34-0410-b5e6-96231b3b80d8
2007-08-04 01:51:18 +00:00
Reid Spencer
1d3d230861 For PR1553:
Make the AsmParser auto-upgrade the old zext and sext
keywords for parameter attributes and handle the 
end-of-line ambiguity.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40610 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-31 02:57:37 +00:00
Reid Spencer
9445e9aaa0 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.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40069 91177308-0d34-0410-b5e6-96231b3b80d8
2007-07-19 23:13:04 +00:00
John Criswell
e644ef7b09 Convert .cvsignore files
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37801 91177308-0d34-0410-b5e6-96231b3b80d8
2007-06-29 16:35:07 +00:00
Chris Lattner
82f3aee9b7 new testcase for a recent regression
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37283 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-22 07:00:38 +00:00
Chris Lattner
36f24cb46d Remove bogus testcase, PR409 is wontfix
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36795 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-05 21:49:24 +00:00
Chris Lattner
5fc30dfe71 new testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36468 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-26 05:28:45 +00:00
Reid Spencer
4f859aa532 For PR1146:
Make ParamAttrsList objects unique. You can no longer directly create or
destroy them but instead must go through the ParamAttrsList::get()
interface.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36327 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-22 05:46:44 +00:00
Christopher Lamb
2330e4d4c4 add support for alignment attributes on load/store instructions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36301 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-21 08:16:25 +00:00
Christopher Lamb
ac79c9e6e0 Test check in
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36269 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-20 05:05:24 +00:00
Reid Spencer
eb1d74e0c8 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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36142 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-16 17:36:08 +00:00
Reid Spencer
43b40035ba For PR1319:
Fix syntax of tests to ensure grep pattern is properly quoted.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36134 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-16 15:31:49 +00:00
Reid Spencer
3401c99889 Fix the syntax for these tests. Noticed by Duncan Sands.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36132 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-16 15:00:39 +00:00
Reid Spencer
90b707f51e Syntax upgrade and fix for PR1336.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36131 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-16 14:46:17 +00:00
Reid Spencer
c7dcd7f604 Test case for PR1328.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36119 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-16 06:52:21 +00:00
Reid Spencer
2a99196359 For PR1336:
De-XFAIL tests now passing.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36097 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-16 00:41:11 +00:00
Reid Spencer
4575ab2186 For PR1336:
XFAIL tests covered by the PR. These will be un-XFAILed as they are fixed.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36093 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-15 23:00:46 +00:00
Reid Spencer
90008f4bee For PR1319:
Upgrade to new Tcl exec based test framework. This exposes three regressions
in llvm-upgrade:
test/Assembler/2002-08-19-BytecodeReader.llx
test/Assembler/2003-08-21-ConstantExprCast-Fold.llx
test/Assembler/2004-01-11-getelementptrfolding.llx


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36067 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-15 10:07:55 +00:00
Reid Spencer
0f5aed5648 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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35918 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-11 19:56:59 +00:00
Reid Spencer
a5ad78e746 For PR1289:
Remove an unneeded instance of "implementation" that soon won't be supported.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35498 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-30 01:35:32 +00:00
Reid Spencer
cb2df95c88 checkpoint -> implementation. This really needs to just drop the need for
a keyword by having the assembler check for incomplete types and values
upon end-of-file.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35474 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-29 18:56:58 +00:00
Reid Spencer
9430832d0e Delete the remanant of an obsolete comment.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35415 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-28 03:23:22 +00:00
Reid Spencer
5373b721c0 Remove use of implementation keyword.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35412 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-28 02:38:26 +00:00
Reid Spencer
72d30156cc The implementation keyword was replaced with checkpoint.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35409 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-28 02:34:53 +00:00
Reid Spencer
6dd81dadb2 Break up huge line so that this file is almost readable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35216 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-20 17:27:19 +00:00
Reid Spencer
4a33714dcd Test case noticed by Sheng that fails because negative values that are
greater than 64-bits don't have the sign bits extended on construction of
the APInt.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35178 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-19 20:35:26 +00:00
Reid Spencer
868cdb2248 For PR1258:
Test that invalid numbered value references get an error message.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35175 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-19 18:41:37 +00:00
Reid Spencer
8ee16fbc73 Test case for PR1256.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35110 91177308-0d34-0410-b5e6-96231b3b80d8
2007-03-14 23:07:24 +00:00
Reid Spencer
a3cf7e7a95 New test cases for PR1187
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34052 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-08 09:10:22 +00:00
Reid Spencer
9d4e2d0a2e Make this legal input.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34051 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-08 09:09:36 +00:00
Reid Spencer
c6a8ca1556 Add some more interesting cases to this test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34042 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-08 08:03:46 +00:00
Reid Spencer
c61a8a0a26 For PR1187:
Add some interesting CSRETCC upgrade cases.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34041 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-08 06:45:02 +00:00
Reid Spencer
c52cf19edc For PR1187:
Add a test to ensure that i1, i8, i16, i32 and i64 are recognized by the
lexer and vars using them will be renamed appropriately.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34019 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-07 23:45:51 +00:00
Reid Spencer
2aa745e709 For PR1187:
Add a test case to test rename of internal linkage functions with the same
name, without an error or warning.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34018 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-07 23:41:10 +00:00
Reid Spencer
d2e065c61a Assembler no longer prints ! at the end of its error messages.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@33908 91177308-0d34-0410-b5e6-96231b3b80d8
2007-02-05 10:17:51 +00:00