1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-26 22:42:46 +02:00
llvm-mirror/test/Linker/Inputs
David Blaikie 65b92c4f37 [opaque pointer type] Add textual IR support for explicit type parameter for global aliases
update.py:
import fileinput
import sys
import re

alias_match_prefix = r"(.*(?:=|:|^)\s*(?:external |)(?:(?:private|internal|linkonce|linkonce_odr|weak|weak_odr|common|appending|extern_weak|available_externally) )?(?:default |hidden |protected )?(?:dllimport |dllexport )?(?:unnamed_addr |)(?:thread_local(?:\([a-z]*\))? )?alias"
plain = re.compile(alias_match_prefix + r" (.*?))(| addrspace\(\d+\) *)\*($| *(?:%|@|null|undef|blockaddress|addrspacecast|\[\[[a-zA-Z]|\{\{).*$)")
cast  = re.compile(alias_match_prefix + r") ((?:bitcast|inttoptr|addrspacecast)\s*\(.* to (.*?)(| addrspace\(\d+\) *)\*\)\s*(?:;.*)?$)")
gep   = re.compile(alias_match_prefix + r") ((?:getelementptr)\s*(?:inbounds)?\s*\((?P<type>.*), (?P=type)(?:\s*addrspace\(\d+\)\s*)?\* .*\)\s*(?:;.*)?$)")

def conv(line):
  m = re.match(cast, line)
  if m:
    return m.group(1) + " " + m.group(3) + ", " + m.group(2)
  m = re.match(gep, line)
  if m:
    return m.group(1) + " " + m.group(3) + ", " + m.group(2)
  m = re.match(plain, line)
  if m:
    return m.group(1) + ", " + m.group(2) + m.group(3) + "*" + m.group(4) + "\n"
  return line

for line in sys.stdin:
  sys.stdout.write(conv(line))

apply.sh:
for name in "$@"
do
  python3 `dirname "$0"`/update.py < "$name" > "$name.tmp" && mv "$name.tmp" "$name"
  rm -f "$name.tmp"
done

The actual commands:
From llvm/src:
find test/ -name *.ll | xargs ./apply.sh
From llvm/src/tools/clang:
find test/ -name *.mm -o -name *.m -o -name *.cpp -o -name *.c | xargs -I '{}' ../../apply.sh "{}"
From llvm/src/tools/polly:
find test/ -name *.ll | xargs ./apply.sh

llvm-svn: 247378
2015-09-11 03:22:04 +00:00
..
apple-version [LinkModules] Change the way ModuleLinker merges triples. 2015-02-13 00:40:41 +00:00
2003-01-30-LinkerRename.ll Make this test a bit stricter. 2014-10-23 18:44:07 +00:00
2003-05-31-LinkerRename.ll Make this test a bit stricter. 2014-10-23 18:52:46 +00:00
alias.ll [opaque pointer type] Add textual IR support for explicit type parameter for global aliases 2015-09-11 03:22:04 +00:00
alignment.ll Add a few extra cases to the test. NFC. 2014-12-05 00:02:42 +00:00
basiclink.a.ll
basiclink.b.ll [opaque pointer type] Add textual IR support for explicit type parameter to the call instruction 2015-04-16 23:24:18 +00:00
comdat2.ll Change the .ll syntax for comdats and add a syntactic sugar. 2015-01-06 22:55:16 +00:00
comdat3.ll Change the .ll syntax for comdats and add a syntactic sugar. 2015-01-06 22:55:16 +00:00
comdat4.ll Change the .ll syntax for comdats and add a syntactic sugar. 2015-01-06 22:55:16 +00:00
comdat5.ll [opaque pointer type] Add textual IR support for explicit type parameter for global aliases 2015-09-11 03:22:04 +00:00
comdat8.ll [opaque pointer type] Add textual IR support for explicit type parameter for global aliases 2015-09-11 03:22:04 +00:00
comdat.ll Change the .ll syntax for comdats and add a syntactic sugar. 2015-01-06 22:55:16 +00:00
ConstantGlobals.ll merge tests for constant linking. 2014-10-31 05:04:16 +00:00
constructor-comdat.ll Fix use of uninitialized variable. 2014-08-11 17:07:34 +00:00
ctors.ll Fix pr20078. 2014-09-05 21:27:52 +00:00
datalayout-a.ll
datalayout-b.ll
distinct.ll Utils: Keep distinct MDNodes distinct in MapMetadata() 2015-01-08 22:42:30 +00:00
drop-debug.bc Work around pr23045 and make it easier to reproduce. 2015-03-27 15:55:06 +00:00
ident.a.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
ident.b.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
linkage2.ll Merge alignment of common GlobalValue. 2014-09-09 17:48:18 +00:00
linkage.a.ll
linkage.b.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
linkage.c.ll New bitcode linker flags: 2015-09-01 17:55:55 +00:00
mdlocation.ll DI: Require subprogram definitions to be distinct 2015-08-28 20:26:49 +00:00
metadata-function.ll Linker: Copy over function metadata attachments 2015-04-24 22:07:31 +00:00
module-flags-dont-change-others.ll Linker: Don't use MDNode::replaceOperandWith() 2015-01-07 21:32:27 +00:00
module-flags-pic-1-b.ll Add Position-independent Code model Module API. 2014-11-07 04:46:10 +00:00
module-flags-pic-2-b.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
old_global_ctors.3.4.bc Add comdat key field to llvm.global_ctors and llvm.global_dtors 2014-05-16 20:39:27 +00:00
opaque.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
override-different-linkage.ll Linker: Add flag to override linkage rules 2015-04-22 04:11:00 +00:00
override-with-internal-linkage-2.ll Linker: Add flag to override linkage rules 2015-04-22 04:11:00 +00:00
override-with-internal-linkage.ll Linker: Add flag to override linkage rules 2015-04-22 04:11:00 +00:00
override.ll Linker: Add flag to override linkage rules 2015-04-22 04:11:00 +00:00
pr21374.ll Ask the module for its the identified types. 2014-12-03 07:18:23 +00:00
pr22807-1.ll Remember to move a type to the correct set when setting the body. 2015-03-06 00:50:21 +00:00
pr22807-2.ll Remember to move a type to the correct set when setting the body. 2015-03-06 00:50:21 +00:00
PR8300.a.ll
PR8300.b.ll [opaque pointer type] Add textual IR support for explicit type parameter for global aliases 2015-09-11 03:22:04 +00:00
PR11464.a.ll
PR11464.b.ll [opaque pointer type] Add textual IR support for explicit type parameter to getelementptr instruction 2015-02-27 19:29:02 +00:00
redefinition.ll Unify and update link-messages.ll and redefinition.ll. NFC. 2014-10-31 16:52:30 +00:00
replaced-function-matches-first-subprogram.ll DI: Require subprogram definitions to be distinct 2015-08-28 20:26:49 +00:00
subprogram-linkonce-weak.ll DI: Require subprogram definitions to be distinct 2015-08-28 20:26:49 +00:00
targettriple-a.ll [LinkModules] Change the way ModuleLinker merges triples. 2015-02-13 00:40:41 +00:00
targettriple-b.ll [LinkModules] Change the way ModuleLinker merges triples. 2015-02-13 00:40:41 +00:00
targettriple-c.ll [LinkModules] Change the way ModuleLinker merges triples. 2015-02-13 00:40:41 +00:00
testlink.ll [opaque pointer type] Add textual IR support for explicit type parameter to load instruction 2015-02-27 21:17:42 +00:00
type-unique-alias.ll [opaque pointer type] Add textual IR support for explicit type parameter for global aliases 2015-09-11 03:22:04 +00:00
type-unique-dst-types2.ll Add a test showing what the linker IdentifiedStructTypes is for. 2014-12-01 03:20:57 +00:00
type-unique-dst-types3.ll Add a test showing what the linker IdentifiedStructTypes is for. 2014-12-01 03:20:57 +00:00
type-unique-inheritance-a.ll DI: Require subprogram definitions to be distinct 2015-08-28 20:26:49 +00:00
type-unique-inheritance-b.ll DI: Require subprogram definitions to be distinct 2015-08-28 20:26:49 +00:00
type-unique-name.ll Set the body of a new struct as soon as it is created. 2014-11-25 15:33:40 +00:00
type-unique-opaque.ll Add back r222727 with a fix. 2014-11-28 16:41:24 +00:00
type-unique-simple2-a.ll DI: Require subprogram definitions to be distinct 2015-08-28 20:26:49 +00:00
type-unique-simple2-b.ll DI: Require subprogram definitions to be distinct 2015-08-28 20:26:49 +00:00
type-unique-unrelated2.ll Add an interesting test that we already get right. NFC. 2014-11-25 03:47:57 +00:00
type-unique-unrelated3.ll Add an interesting test that we already get right. NFC. 2014-11-25 03:47:57 +00:00
unique-fwd-decl-b.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
unique-fwd-decl-order.ll IR: Make metadata typeless in assembly 2014-12-15 19:07:53 +00:00
visibility.ll [opaque pointer type] Add textual IR support for explicit type parameter for global aliases 2015-09-11 03:22:04 +00:00