From: Jim Grosbach Date: Tue, 17 Nov 2009 21:24:11 +0000 (+0000) Subject: Enable arm jumpt table adjustment. X-Git-Tag: android-x86-6.0-r1~1003^2~12800 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=f04777b945e272ccec21c7080bd5480d78a14fd2;p=android-x86%2Fexternal-llvm.git Enable arm jumpt table adjustment. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@89143 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Target/ARM/ARMConstantIslandPass.cpp b/lib/Target/ARM/ARMConstantIslandPass.cpp index 734e33d2e6e..d22c43afc5f 100644 --- a/lib/Target/ARM/ARMConstantIslandPass.cpp +++ b/lib/Target/ARM/ARMConstantIslandPass.cpp @@ -48,7 +48,7 @@ STATISTIC(NumJTInserted, "Number of jump table intermediate blocks inserted"); static cl::opt -AdjustJumpTableBlocks("arm-adjust-jump-tables", cl::Hidden, cl::init(false), +AdjustJumpTableBlocks("arm-adjust-jump-tables", cl::Hidden, cl::init(true), cl::desc("Adjust basic block layout to better use TB[BH]")); namespace { diff --git a/test/CodeGen/Thumb2/thumb2-jtb.ll b/test/CodeGen/Thumb2/thumb2-jtb.ll index 7d093ecce20..f5a56e5ace0 100644 --- a/test/CodeGen/Thumb2/thumb2-jtb.ll +++ b/test/CodeGen/Thumb2/thumb2-jtb.ll @@ -1,4 +1,4 @@ -; RUN: llc < %s -march=thumb -mattr=+thumb2 | not grep tbb +; RUN: llc < %s -march=thumb -mattr=+thumb2 -arm-adjust-jump-tables=0 | not grep tbb ; Do not use tbb / tbh if any destination is before the jumptable. ; rdar://7102917 diff --git a/test/CodeGen/Thumb2/thumb2-tbh.ll b/test/CodeGen/Thumb2/thumb2-tbh.ll index 916d4679994..2cf1d6a2afd 100644 --- a/test/CodeGen/Thumb2/thumb2-tbh.ll +++ b/test/CodeGen/Thumb2/thumb2-tbh.ll @@ -1,7 +1,6 @@ ; RUN: llc < %s -mtriple=thumbv7-apple-darwin -relocation-model=pic | FileCheck %s ; Thumb2 target should reorder the bb's in order to use tbb / tbh. -; XFAIL: * %struct.R_flstr = type { i32, i32, i8* } %struct._T_tstr = type { i32, %struct.R_flstr*, %struct._T_tstr* }