Commit Graph

15 Commits

Author SHA1 Message Date
Rafael Espindola
3560edede3 Make "@name =" mandatory for globals in .ll files.
An oddity of the .ll syntax is that the "@var = " in

@var = global i32 42

is optional. Writing just

global i32 42

is equivalent to

@0 = global i32 42

This means that there is a pretty big First set at the top level. The
current implementation maintains it manually. I was trying to refactor
it, but then started wondering why keep it a all. I personally find the
above syntax confusing. It looks like something is missing.

This patch removes the feature and simplifies the parser.

llvm-svn: 269096
2016-05-10 18:22:45 +00:00
David Blaikie
3ea2df7c7b [opaque pointer type] Add textual IR support for explicit type parameter to gep operator
Similar to gep (r230786) and load (r230794) changes.

Similar migration script can be used to update test cases, which
successfully migrated all of LLVM and Polly, but about 4 test cases
needed manually changes in Clang.

(this script will read the contents of stdin and massage it into stdout
- wrap it in the 'apply.sh' script shown in previous commits + xargs to
apply it over a large set of test cases)

import fileinput
import sys
import re

rep = re.compile(r"(getelementptr(?:\s+inbounds)?\s*\()((<\d*\s+x\s+)?([^@]*?)(|\s*addrspace\(\d+\))\s*\*(?(3)>)\s*)(?=$|%|@|null|undef|blockaddress|getelementptr|addrspacecast|bitcast|inttoptr|zeroinitializer|<|\[\[[a-zA-Z]|\{\{)", re.MULTILINE | re.DOTALL)

def conv(match):
  line = match.group(1)
  line += match.group(4)
  line += ", "
  line += match.group(2)
  return line

line = sys.stdin.read()
off = 0
for match in re.finditer(rep, line):
  sys.stdout.write(line[off:match.start()])
  sys.stdout.write(conv(match))
  off = match.end()
sys.stdout.write(line[off:])

llvm-svn: 232184
2015-03-13 18:20:45 +00:00
Tanya Lattner
726c082fd5 Remove llvm-upgrade and update tests.
llvm-svn: 47784
2008-03-01 07:38:40 +00:00
Reid Spencer
8453db2776 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
7f5ef2d7a5 Use the llvm-upgrade program to upgrade llvm assembly.
llvm-svn: 32115
2006-12-02 04:23:10 +00:00
Reid Spencer
95d5641559 Fix some typos.
llvm-svn: 31897
2006-11-23 16:45:52 +00:00
Reid Spencer
43e145ce25 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
Tanya Lattner
8cb5895d16 Added RUN lines and dejagnu support for Feature dir.
llvm-svn: 17568
2004-11-07 06:08:43 +00:00
Chris Lattner
de4b3dba5a Add a simple test for hex constant integers
llvm-svn: 5803
2003-04-17 22:19:23 +00:00
Chris Lattner
8424f9d454 Fix testcase
llvm-svn: 5746
2003-03-18 22:53:19 +00:00
Chris Lattner
24e01d2066 - 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
8851c60986 Convert constexpr over to new syntax
llvm-svn: 3359
2002-08-15 21:14:39 +00:00
Chris Lattner
cf5622ad22 Convert testcase to use correct syntax
llvm-svn: 3356
2002-08-15 19:48:48 +00:00
Vikram S. Adve
dea5af5ec6 Added duplicate constant expressions to test uniqueness support.
llvm-svn: 2908
2002-07-15 18:18:45 +00:00
Vikram S. Adve
dafe6f20de Test the handling of constant expressions.
llvm-svn: 2889
2002-07-14 22:39:02 +00:00