From 4df21b14675954ba951ad118d1dc4a4021650078 Mon Sep 17 00:00:00 2001 From: Reed Kotler Date: Wed, 13 Nov 2013 04:37:52 +0000 Subject: Allow the code which returns the length for inline assembler to know specifically about the .space directive. This allows us to force large blocks of code to appear in test cases for things like constant islands without having to make giant test cases to force things like long branches to take effect. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194555 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/CodeGen/Mips/const6a.ll | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 test/CodeGen/Mips/const6a.ll (limited to 'test/CodeGen/Mips') diff --git a/test/CodeGen/Mips/const6a.ll b/test/CodeGen/Mips/const6a.ll new file mode 100644 index 0000000000..8b402accc7 --- /dev/null +++ b/test/CodeGen/Mips/const6a.ll @@ -0,0 +1,29 @@ +; RUN: llc -mtriple=mipsel-linux-gnu -march=mipsel -mcpu=mips16 -soft-float -mips16-hard-float -relocation-model=pic -mips16-constant-islands < %s | FileCheck %s -check-prefix=load-relax1 + +; RUN: llc -mtriple=mipsel-linux-gnu -march=mipsel -mcpu=mips16 -soft-float -mips16-hard-float -relocation-model=pic -mips16-constant-islands < %s | FileCheck %s -check-prefix=load-relax + +; ModuleID = 'const6a.c' +target datalayout = "E-p:32:32:32-i1:8:8-i8:8:32-i16:16:32-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-n32-S64" +target triple = "mips--linux-gnu" + +@i = common global i32 0, align 4 + +; Function Attrs: nounwind +define void @t() #0 { +entry: + store i32 -559023410, i32* @i, align 4 +; load-relax-NOT: lw ${{[0-9]+}}, $CPI0_0 # 16 bit inst +; load-relax1: lw ${{[0-9]+}}, $CPI0_0 +; load-relax: jrc $ra +; load-relax: .align 2 +; load-relax: $CPI0_0: +; load-relax: .4byte 3735943886 +; load-relax: .end t + call void asm sideeffect ".space 40000", ""() #1, !srcloc !1 + ret void +} + +attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf" "no-infs-fp-math"="false" "no-nans-fp-math"="false" "stack-protector-buffer-size"="8" "unsafe-fp-math"="false" "use-soft-float"="true" } +attributes #1 = { nounwind } + +!1 = metadata !{i32 121} -- cgit v1.2.3