[opaque pointer type] Add textual IR support for explicit type parameter to load instruction

Essentially the same as the GEP change in r230786.

A similar migration script can be used to update test cases, though a few more
test case improvements/changes were required this time around: (r229269-r229278)

import fileinput
import sys
import re

pat = re.compile(r"((?:=|:|^)\s*load (?:atomic )?(?:volatile )?(.*?))(| addrspace\(\d+\) *)\*($| *(?:%|@|null|undef|blockaddress|getelementptr|addrspacecast|bitcast|inttoptr|\[\[[a-zA-Z]|\{\{).*$)")

for line in sys.stdin:
  sys.stdout.write(re.sub(pat, r"\1, \2\3*\4", line))

Reviewers: rafael, dexonsmith, grosser

Differential Revision: http://reviews.llvm.org/D7649

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@230794 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
David Blaikie
2015-02-27 21:17:42 +00:00
parent dc64962c86
commit 7c9c6ed761
3931 changed files with 29316 additions and 29292 deletions

View File

@@ -89,15 +89,15 @@ define void @test(i32 %a1, i32 %a2, i32 %a3, i32 %a4) {
define void @vgpr_coords(float addrspace(2)* addrspace(2)* inreg, <16 x i8> addrspace(2)* inreg, <32 x i8> addrspace(2)* inreg, i32 inreg, <2 x i32>, <2 x i32>, <2 x i32>, <3 x i32>, <2 x i32>, <2 x i32>, <2 x i32>, float, float, float, float, float, float, float, float, float) #0 {
main_body:
%20 = getelementptr float addrspace(2)*, float addrspace(2)* addrspace(2)* %0, i32 0
%21 = load float addrspace(2)* addrspace(2)* %20, !tbaa !2
%21 = load float addrspace(2)*, float addrspace(2)* addrspace(2)* %20, !tbaa !2
%22 = getelementptr float, float addrspace(2)* %21, i32 0
%23 = load float addrspace(2)* %22, !tbaa !2, !invariant.load !1
%23 = load float, float addrspace(2)* %22, !tbaa !2, !invariant.load !1
%24 = getelementptr float, float addrspace(2)* %21, i32 1
%25 = load float addrspace(2)* %24, !tbaa !2, !invariant.load !1
%25 = load float, float addrspace(2)* %24, !tbaa !2, !invariant.load !1
%26 = getelementptr float, float addrspace(2)* %21, i32 4
%27 = load float addrspace(2)* %26, !tbaa !2, !invariant.load !1
%27 = load float, float addrspace(2)* %26, !tbaa !2, !invariant.load !1
%28 = getelementptr <32 x i8>, <32 x i8> addrspace(2)* %2, i32 0
%29 = load <32 x i8> addrspace(2)* %28, !tbaa !2
%29 = load <32 x i8>, <32 x i8> addrspace(2)* %28, !tbaa !2
%30 = bitcast float %27 to i32
%31 = bitcast float %23 to i32
%32 = bitcast float %25 to i32