llvm/test/Object
David Blaikie 21f77df7b6 [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
2015-09-11 03:22:04 +00:00
..
AArch64
AMDGPU ELFYAML: Enable parsing of EM_AMDGPU 2015-07-31 01:15:15 +00:00
ARM llvm-nm: Don't print mapping symbols. 2015-06-25 21:00:51 +00:00
Inputs Re-apply r246276 - Object: Teach llvm-ar to create symbol table for COFF short import files 2015-08-28 07:40:30 +00:00
Mips [ELF] Explicitly configure sections alignment in the tests. NFC 2015-07-09 18:22:55 +00:00
X86 [opaque pointer type] Add textual IR support for explicit type parameter for global aliases 2015-09-11 03:22:04 +00:00
ar-create.test
ar-error.test
archive-delete.test
archive-error-tmp.txt
archive-extract-dir.test
archive-extract.test Accept lower case to handle windows error messages. 2015-07-14 22:42:21 +00:00
archive-format.test Trying to fix the windows bots. 2015-07-16 00:38:34 +00:00
archive-long-index.test
archive-move.test
archive-replace-pos.test
archive-symtab.test Object: Fix COFF import file's symbols. 2015-09-01 06:01:53 +00:00
archive-toc.test Fix reading archive members with / in the name. 2015-07-13 23:07:05 +00:00
archive-update.test Handle the error of trying to convert a regular archive to a thin one. 2015-07-15 20:45:56 +00:00
check_binary_output.ll
coff-archive-short.test
coff-archive.test llvm-nm: treat weak undefined as undefined. 2015-07-06 21:36:23 +00:00
coff-invalid.test Check that COFF .obj files have sections with zero virtual address spaces. 2015-07-06 14:26:07 +00:00
corrupt.test Add dynamic_table iterators back to ELF.h. 2015-08-07 15:25:20 +00:00
directory.ll
dllimport-globalref.ll Object: Add XFAILed test case for r239560. 2015-06-24 18:03:39 +00:00
dllimport.ll Object: Prepend __imp_ when mangling a dllimport symbol in IRObjectFile. 2015-06-11 21:42:18 +00:00
elf-reloc-no-sym.test
elf-unknown-type.test
invalid.test Report an error if a SHT_SYMTAB_SHNDX section has the wrong size. 2015-08-24 21:09:41 +00:00
kext.test
lit.local.cfg Change how symbol sizes are handled in lib/Object. 2015-06-24 10:20:30 +00:00
macho-invalid.test [Object, MachO] Don't crash on incomplete MachO segment load commands. 2015-06-04 22:26:44 +00:00
mangle-ir.ll
mri1.test
mri2.test
mri3.test
mri4.test
mri5.test
mri-addlib.test
mri-addmod.test
mri-crlf.test
nm-archive.test Identify thin archives as archives. 2015-07-22 18:29:39 +00:00
nm-darwin-m.test
nm-error.test
nm-irix6.test
nm-pe-image.test Update comments. 2015-08-06 20:05:27 +00:00
nm-shared-object.test
nm-trivial-object.test Fix llvm-nm -S option. 2015-05-22 13:28:35 +00:00
nm-universal-binary.test
nm-weak-global-macho.test
no-section-header-string-table.test [Object][ELF] Handle files with no section header string table. 2015-07-21 21:40:33 +00:00
no-section-table.test [Object][ELF] Handle the dynamic string table in files without a section table. 2015-07-10 20:11:57 +00:00
obj2yaml-coff-long-file-symbol.test
obj2yaml-coff-long-section-name.test
obj2yaml-coff-section-aux-symbol.test
obj2yaml-coff-weak-external.test
obj2yaml-sectiongroup.test
obj2yaml.test [ELFYAML] Fix handling SHT_NOBITS sections by obj2yaml/yaml2obj tools 2015-07-03 23:00:54 +00:00
objdump-export-list.test
objdump-file-header.test
objdump-no-sectionheaders.test
objdump-private-headers.test
objdump-reloc-shared.test
objdump-relocations.test
objdump-section-content.test
objdump-sectionheaders.test
objdump-shndx.test Add a test showing that objdump (and so ObjectFIle) can handle shndx. 2015-08-10 21:00:15 +00:00
objdump-symbol-table.test objdump: Don't print a (always 0) size for MachO symbols. 2015-06-23 15:45:38 +00:00
readobj-elf-versioning.test
readobj-shared-object.test Fix the interpretation of a 0 st_name. 2015-06-03 05:14:22 +00:00
readobj.test
relocation-executable.test Support printing relocations in files with no section table. 2015-07-23 09:11:05 +00:00
simple-archive.test
size-trivial-macho.test
stackmap-dump.test [Stackmap] Pre-assemble the stackmap parser test case. (Fix builders). 2015-06-27 03:49:25 +00:00
yaml2obj-coff-multi-doc.test
yaml2obj-elf-alignment.yaml [yaml2obj] Align section content using AddressAlign field's value 2015-07-08 10:12:40 +00:00
yaml2obj-elf-bits-endian.test
yaml2obj-elf-file-headers-with-e_flags.yaml
yaml2obj-elf-file-headers.yaml
yaml2obj-elf-multi-doc.test
yaml2obj-elf-rel-noref.yaml [ELFYAML] Fix handling SHT_NOBITS sections by obj2yaml/yaml2obj tools 2015-07-03 23:00:54 +00:00
yaml2obj-elf-rel.yaml [yaml2obj] Use regex to match sections offsets. NFC 2015-07-08 06:57:24 +00:00
yaml2obj-elf-section-basic.yaml [yaml2obj] Initialize sh_addralign field for the .symtab section 2015-07-09 18:23:02 +00:00
yaml2obj-elf-section-invalid-size.yaml
yaml2obj-elf-symbol-basic.yaml [ELF] Explicitly configure sections alignment in the tests. NFC 2015-07-09 18:22:55 +00:00
yaml2obj-elf-symbol-LocalGlobalWeak.yaml
yaml2obj-elf-symbol-visibility.yaml
yaml2obj-readobj.test