llvm.org GIT mirror llvm / 6692ce1
ARM IAS: add support for the .pool directive The .pool directive is an alias for the .ltorg directive used to create a literal pool. Simply treat .pool as if .ltorg was passed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@197787 91177308-0d34-0410-b5e6-96231b3b80d8 Saleem Abdulrasool 6 years ago
2 changed file(s) with 20 addition(s) and 2 deletion(s). Raw diff Collapse all Expand all
79097909 return parseDirectiveInst(DirectiveID.getLoc(), 'n');
79107910 else if (IDVal == ".inst.w")
79117911 return parseDirectiveInst(DirectiveID.getLoc(), 'w');
7912 else if (IDVal == ".ltorg")
7912 else if (IDVal == ".ltorg" || IDVal == ".pool")
79137913 return parseDirectiveLtorg(DirectiveID.getLoc());
79147914 return true;
79157915 }
84638463 }
84648464
84658465 /// parseDirectiveLtorg
8466 /// ::= .ltorg
8466 /// ::= .ltorg | .pool
84678467 bool ARMAsmParser::parseDirectiveLtorg(SMLoc L) {
84688468 MCStreamer &Streamer = getParser().getStreamer();
84698469 const MCSection *Section = Streamer.getCurrentSection().first;
0 @ RUN: llvm-mc -triple thumbv7-linux-gnueabi -o - %s | FileCheck %s
1
2 .syntax unified
3
4 .align 2
5 .global pool
6 .type pool,%function
7 pool:
8 ldr r0, =0xba5eba11
9 bx lr
10 .pool
11
12 @ CHECK-LABEL: pool
13 @ CHECK: ldr r0, .Ltmp0
14 @ CHECK: .align 2
15 @ CHECK-LABEL: .Ltmp0:
16 @ CHECK: .long 3126770193
17