From ece63dbd0de745609ea7bd3effe2eb590052336b Mon Sep 17 00:00:00 2001 From: Venkatraman Govindaraju Date: Sat, 5 Oct 2013 02:29:47 +0000 Subject: [Sparc] Use correct alignment while loading/storing fp128 values. llvm-svn: 192023 --- llvm/test/CodeGen/SPARC/fp128.ll | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'llvm/test/CodeGen/SPARC') diff --git a/llvm/test/CodeGen/SPARC/fp128.ll b/llvm/test/CodeGen/SPARC/fp128.ll index 2406af753fa..789e074d917 100644 --- a/llvm/test/CodeGen/SPARC/fp128.ll +++ b/llvm/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 +} -- cgit v1.2.3