David Blaikie
2f40830dde
[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
..
2015-08-03 18:01:50 +00:00
2014-08-19 21:08:27 +00:00
2014-08-19 21:08:27 +00:00
2014-08-19 21:08:27 +00:00
2014-02-26 12:06:36 +00:00
2015-02-27 21:17:42 +00:00
2014-08-19 21:08:27 +00:00
2014-08-19 21:08:27 +00:00
2013-07-26 04:16:55 +00:00
2015-08-03 14:31:49 +00:00
2014-08-19 21:08:27 +00:00
2014-02-26 12:06:36 +00:00
2014-08-19 21:08:27 +00:00
2014-02-26 12:06:36 +00:00
2014-08-19 21:08:27 +00:00
2014-02-26 12:06:36 +00:00
2014-08-19 21:08:27 +00:00
2014-12-01 21:04:44 +00:00
2013-12-22 07:51:53 +00:00
2015-02-27 21:17:42 +00:00
2013-09-09 19:14:35 +00:00
2014-08-19 21:08:27 +00:00
2014-03-11 10:48:52 +00:00
2015-04-28 04:30:29 +00:00
2015-04-28 04:30:29 +00:00
2015-09-11 03:22:04 +00:00
2015-08-06 22:04:21 +00:00
2015-09-11 03:22:04 +00:00
2015-09-08 17:39:21 +00:00
2015-09-11 03:22:04 +00:00
2015-02-27 19:29:02 +00:00
2014-09-23 08:48:01 +00:00
2014-09-23 08:48:01 +00:00
2014-09-23 08:48:01 +00:00
2015-08-28 20:26:49 +00:00
2015-08-03 17:26:41 +00:00
2015-05-21 20:37:30 +00:00
2015-08-28 20:26:49 +00:00
2015-07-31 18:58:39 +00:00
2015-08-28 20:26:49 +00:00
2015-08-28 20:26:49 +00:00
2015-02-25 01:10:03 +00:00
2015-02-25 01:10:03 +00:00
2014-08-19 21:08:27 +00:00
2015-07-10 12:52:00 +00:00
2014-08-19 21:08:27 +00:00
2015-02-27 21:17:42 +00:00
2014-12-15 19:07:53 +00:00
2014-12-08 00:41:39 +00:00
2014-08-19 21:08:27 +00:00
2013-12-15 11:50:45 +00:00
2015-09-11 03:22:04 +00:00
2014-09-23 08:48:01 +00:00
2014-08-19 21:08:27 +00:00
2015-02-25 01:10:03 +00:00
2013-10-31 19:12:36 +00:00
2015-06-03 01:30:13 +00:00
2015-01-19 15:16:06 +00:00
2013-12-01 10:16:35 +00:00
2015-09-11 03:22:04 +00:00
2014-05-07 22:57:20 +00:00
2014-12-15 19:07:53 +00:00
2015-03-13 18:20:45 +00:00
2014-03-02 15:26:36 +00:00
2015-03-13 18:20:45 +00:00
2014-12-15 19:07:53 +00:00
2014-12-11 23:02:24 +00:00
2014-12-15 19:07:53 +00:00
2015-06-17 20:52:32 +00:00
2014-09-23 08:48:01 +00:00
2013-11-04 16:16:24 +00:00
2015-09-11 03:22:04 +00:00
2014-05-16 19:35:39 +00:00
2015-06-16 20:03:39 +00:00
2015-02-25 01:10:03 +00:00
2014-03-27 12:08:23 +00:00
2015-07-02 16:22:40 +00:00
2014-08-19 21:08:27 +00:00
2014-08-19 21:08:27 +00:00
2015-08-31 18:00:30 +00:00
2014-08-19 21:08:27 +00:00
2014-08-19 21:08:27 +00:00
2014-09-23 08:48:01 +00:00
2014-09-23 08:48:01 +00:00
2014-08-19 21:08:27 +00:00
2014-09-23 08:48:01 +00:00
2014-09-23 08:48:01 +00:00
2014-08-19 21:08:27 +00:00
2014-05-17 21:00:22 +00:00
2015-02-27 21:17:42 +00:00
2014-06-25 15:41:39 +00:00
2014-12-15 19:07:53 +00:00
2015-09-10 16:02:24 +00:00
2015-09-11 03:22:04 +00:00
2014-08-19 21:08:27 +00:00
2014-03-02 15:26:36 +00:00
2014-08-19 21:08:27 +00:00
2014-02-26 12:06:36 +00:00
2014-08-19 21:08:27 +00:00
2013-12-08 11:35:09 +00:00
2014-08-19 21:08:27 +00:00
2014-06-13 14:24:07 +00:00
2015-01-20 05:58:07 +00:00
2015-01-20 05:58:07 +00:00