aboutsummaryrefslogtreecommitdiffstats
path: root/test/CodeGen/SPARC/fp128.ll
diff options
context:
space:
mode:
Diffstat (limited to 'test/CodeGen/SPARC/fp128.ll')
-rw-r--r--test/CodeGen/SPARC/fp128.ll21
1 files changed, 21 insertions, 0 deletions
diff --git a/test/CodeGen/SPARC/fp128.ll b/test/CodeGen/SPARC/fp128.ll
index 2406af7..789e074 100644
--- a/test/CodeGen/SPARC/fp128.ll
+++ b/test/CodeGen/SPARC/fp128.ll
@@ -126,3 +126,24 @@ entry:
store fp128 %0, fp128* %scalar.result, align 8
ret void
}
+
+; HARD-LABEL: fp128_unaligned
+; HARD: ldub
+; HARD: faddq
+; HARD: stb
+; HARD: jmp
+
+; SOFT-LABEL: fp128_unaligned
+; SOFT: ldub
+; SOFT: call _Q_add
+; SOFT: stb
+; SOFT: jmp
+
+define void @fp128_unaligned(fp128* %a, fp128* %b, fp128* %c) {
+entry:
+ %0 = load fp128* %a, align 1
+ %1 = load fp128* %b, align 1
+ %2 = fadd fp128 %0, %1
+ store fp128 %2, fp128* %c, align 1
+ ret void
+}