# ADJCALLSTACKDOWN and ADJCALLSTACKUP should not be generated around TLS pseudo code if it is located within existing ADJCALLSTACKDOWN/ADJCALLSTACKUP pair.
# RUN: llc -mtriple=powerpc64le-linux-gnu -run-pass=ppc-tls-dynamic-call -verify-machineinstrs -o - %s | FileCheck %s

--- |
  target datalayout = "e-m:e-i64:64-n32:64"
  target triple = "powerpc64le-unknown-linux-gnu"
  
  @tls_var = external thread_local local_unnamed_addr global i32
  
  define i32 @tls_func() local_unnamed_addr {
  entry:
    %0 = load i32, i32* @tls_var
    ret i32 %0
  }

...
---
name:            tls_func
alignment:       4
exposesReturnsTwice: false
legalized:       false
regBankSelected: false
selected:        false
tracksRegLiveness: true
registers:       
  - { id: 0, class: g8rc_and_g8rc_nox0, preferred-register: '' }
  - { id: 1, class: g8rc_and_g8rc_nox0, preferred-register: '' }
  - { id: 2, class: g8rc, preferred-register: '' }
liveins:         
  - { reg: '$x2' }
frameInfo:       
  isFrameAddressTaken: false
  isReturnAddressTaken: false
  hasStackMap:     false
  hasPatchPoint:   false
  stackSize:       0
  offsetAdjustment: 0
  maxAlignment:    0
  adjustsStack:    false
  hasCalls:        false
  stackProtector:  ''
  maxCallFrameSize: 4294967295
  hasOpaqueSPAdjustment: false
  hasVAStart:      false
  hasMustTailInVarArgFunc: false
  savePoint:       ''
  restorePoint:    ''
fixedStack:      
stack:           
constants:       
body:             |
  bb.0.entry:
    liveins: $x2
    ADJCALLSTACKDOWN 32, 0, implicit-def $r1, implicit $r1
    %0 = ADDIStlsgdHA $x2, @tls_var
    %1 = ADDItlsgdLADDR killed %0, @tls_var, @tls_var, implicit-def dead $x0, implicit-def dead $x3, implicit-def dead $x4, implicit-def dead $x5, implicit-def dead $x6, implicit-def dead $x7, implicit-def dead $x8, implicit-def dead $x9, implicit-def dead $x10, implicit-def dead $x11, implicit-def dead $x12, implicit-def dead $lr8, implicit-def dead $ctr8, implicit-def dead $cr0, implicit-def dead $cr1, implicit-def dead $cr5, implicit-def dead $cr6, implicit-def dead $cr7
    %2 = LWZ8 0, killed %1 :: (dereferenceable load 4 from @tls_var)
    $x3 = COPY %2
    ADJCALLSTACKUP 32, 0, implicit-def $r1, implicit $r1
    BLR8 implicit $lr8, implicit $rm, implicit $x3
    ; CHECK-LABEL: bb.0.entry
    ; CHECK-NOT: ADJCALLSTACKDOWN 0, 0
    ; CHECK-NOT: ADJCALLSTACKUP 0, 0
    ; CHECK: BLR8
...
