diff options
author | David Blaikie <dblaikie@gmail.com> | 2015-09-11 03:22:04 +0000 |
---|---|---|
committer | David Blaikie <dblaikie@gmail.com> | 2015-09-11 03:22:04 +0000 |
commit | 21f77df7b644f471dc6f9cc7abaa52667e471650 (patch) | |
tree | 0157391eba974278f7006498f3ada1dd0b23f643 /test/Assembler/private-hidden-alias.ll | |
parent | a6f58ad82d6a8728096bf4690fa4b9e4f99241ae (diff) |
[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
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@247378 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Assembler/private-hidden-alias.ll')
-rw-r--r-- | test/Assembler/private-hidden-alias.ll | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/test/Assembler/private-hidden-alias.ll b/test/Assembler/private-hidden-alias.ll index 2e770e58784..eac27f488e6 100644 --- a/test/Assembler/private-hidden-alias.ll +++ b/test/Assembler/private-hidden-alias.ll @@ -2,5 +2,5 @@ @global = global i32 0 -@alias = private hidden alias i32* @global +@alias = private hidden alias i32, i32* @global ; CHECK: symbol with local linkage must have default visibility |