Add SwiftShader dump from Feb 6 2013
diff --git a/src/LLVM/test/CodeGen/PowerPC/small-arguments.ll b/src/LLVM/test/CodeGen/PowerPC/small-arguments.ll
new file mode 100644
index 0000000..bddbf60
--- /dev/null
+++ b/src/LLVM/test/CodeGen/PowerPC/small-arguments.ll
@@ -0,0 +1,52 @@
+; RUN: llc < %s -march=ppc32 | not grep {extsh\\|rlwinm}

+

+declare signext i16 @foo()  

+

+define i32 @test1(i16 signext %X) {

+	%Y = sext i16 %X to i32  ;; dead

+	ret i32 %Y

+}

+

+define i32 @test2(i16 zeroext %X) {

+	%Y = sext i16 %X to i32

+	%Z = and i32 %Y, 65535      ;; dead

+	ret i32 %Z

+}

+

+define void @test3() {

+	%tmp.0 = call signext i16 @foo()             ;; no extsh!

+	%tmp.1 = icmp slt i16 %tmp.0, 1234

+	br i1 %tmp.1, label %then, label %UnifiedReturnBlock

+

+then:	

+	call i32 @test1(i16 signext 0)

+	ret void

+UnifiedReturnBlock:

+	ret void

+}

+

+define i32 @test4(i16* %P) {

+        %tmp.1 = load i16* %P

+        %tmp.2 = zext i16 %tmp.1 to i32

+        %tmp.3 = and i32 %tmp.2, 255

+        ret i32 %tmp.3

+}

+

+define i32 @test5(i16* %P) {

+        %tmp.1 = load i16* %P

+        %tmp.2 = bitcast i16 %tmp.1 to i16

+        %tmp.3 = zext i16 %tmp.2 to i32

+        %tmp.4 = and i32 %tmp.3, 255

+        ret i32 %tmp.4

+}

+

+define i32 @test6(i32* %P) {

+        %tmp.1 = load i32* %P

+        %tmp.2 = and i32 %tmp.1, 255

+        ret i32 %tmp.2

+}

+

+define zeroext i16 @test7(float %a)  {

+        %tmp.1 = fptoui float %a to i16

+        ret i16 %tmp.1

+}