brintos

brintos / llvm-project-archived public Read only

0
0
Text · 29.4 KiB · 1403772 Raw
628 lines · plain
1; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 42; RUN: llc -verify-machineinstrs -mcpu=pwr7 -mattr=-altivec -mtriple powerpc64-ibm-aix-xcoff \3; RUN:      --code-model=small < %s | FileCheck %s --check-prefixes=DEFAULT_SMALL644; RUN: llc -verify-machineinstrs -mcpu=pwr7 -mattr=-altivec -mtriple powerpc64-ibm-aix-xcoff \5; RUN:      --code-model=large < %s | FileCheck %s --check-prefixes=DEFAULT_LARGE646; RUN: llc -verify-machineinstrs -mcpu=pwr7 -mattr=-altivec -mtriple powerpc64-ibm-aix-xcoff \7; RUN:      -mattr=+aix-shared-lib-tls-model-opt --code-model=small < %s | FileCheck %s --check-prefixes=TLS_MODEL_OPT_SMALL648; RUN: llc -verify-machineinstrs -mcpu=pwr7 -mattr=-altivec -mtriple powerpc64-ibm-aix-xcoff \9; RUN:      -mattr=+aix-shared-lib-tls-model-opt --code-model=large < %s | FileCheck %s --check-prefixes=TLS_MODEL_OPT_LARGE6410; RUN: llc -verify-machineinstrs -mcpu=pwr7 -mattr=-altivec -mtriple powerpc64-ibm-aix-xcoff \11; RUN:      -mattr=+aix-shared-lib-tls-model-opt -ppc-aix-shared-lib-tls-model-opt-limit=2 \12; RUN:      --code-model=small < %s | FileCheck %s --check-prefixes=TLS_MODEL_OPT_LIMIT2_SMALL6413; RUN: llc -verify-machineinstrs -mcpu=pwr7 -mattr=-altivec -mtriple powerpc64-ibm-aix-xcoff \14; RUN:      -mattr=+aix-shared-lib-tls-model-opt -ppc-aix-shared-lib-tls-model-opt-limit=2 \15; RUN:      --code-model=large < %s | FileCheck %s --check-prefixes=TLS_MODEL_OPT_LIMIT2_LARGE6416; RUN: llc -verify-machineinstrs -mcpu=pwr7 -mattr=-altivec -mtriple powerpc64-ibm-aix-xcoff \17; RUN:      -mattr=+aix-shared-lib-tls-model-opt -ppc-aix-shared-lib-tls-model-opt-limit=3 \18; RUN:      --code-model=small < %s | FileCheck %s --check-prefixes=TLS_MODEL_OPT_LIMIT3_SMALL6419; RUN: llc -verify-machineinstrs -mcpu=pwr7 -mattr=-altivec -mtriple powerpc64-ibm-aix-xcoff \20; RUN:      -mattr=+aix-shared-lib-tls-model-opt -ppc-aix-shared-lib-tls-model-opt-limit=3 \21; RUN:      --code-model=large < %s | FileCheck %s --check-prefixes=TLS_MODEL_OPT_LIMIT3_LARGE6422 23@VarTLSLD1 = internal thread_local(localdynamic) global i32 42, align 424@VarTLSLD2 = internal thread_local(localdynamic) global i32 0, align 425@VarTLSLD3 = internal thread_local(localdynamic) global i32 0, align 426 27; Tune function level TLS model settings:28; Use initial-exec when we have a function accessing only one TLS variable.29; Use local-dynamic when we have a function accessing a handful or more different TLS variables.30 31define i32 @Single_LD(i32 %P, i32 %Q) {32; DEFAULT_SMALL64-LABEL: Single_LD:33; DEFAULT_SMALL64:       # %bb.0: # %entry34; DEFAULT_SMALL64-NEXT:    mflr 035; DEFAULT_SMALL64-NEXT:    stdu 1, -48(1)36; DEFAULT_SMALL64-NEXT:    and 6, 3, 437; DEFAULT_SMALL64-NEXT:    ld 3, L..C0(2) # target-flags(ppc-tlsldm) @"_$TLSML"38; DEFAULT_SMALL64-NEXT:    std 0, 64(1)39; DEFAULT_SMALL64-NEXT:    bla .__tls_get_mod[PR]40; DEFAULT_SMALL64-NEXT:    ld 4, L..C1(2) # target-flags(ppc-tlsld) @VarTLSLD141; DEFAULT_SMALL64-NEXT:    cmpwi 6, -142; DEFAULT_SMALL64-NEXT:    lwzx 3, 3, 443; DEFAULT_SMALL64-NEXT:    addi 1, 1, 4844; DEFAULT_SMALL64-NEXT:    ld 0, 16(1)45; DEFAULT_SMALL64-NEXT:    mtlr 046; DEFAULT_SMALL64-NEXT:    blr47;48; DEFAULT_LARGE64-LABEL: Single_LD:49; DEFAULT_LARGE64:       # %bb.0: # %entry50; DEFAULT_LARGE64-NEXT:    mflr 051; DEFAULT_LARGE64-NEXT:    stdu 1, -48(1)52; DEFAULT_LARGE64-NEXT:    and 6, 3, 453; DEFAULT_LARGE64-NEXT:    addis 3, L..C0@u(2)54; DEFAULT_LARGE64-NEXT:    addis 7, L..C1@u(2)55; DEFAULT_LARGE64-NEXT:    ld 3, L..C0@l(3)56; DEFAULT_LARGE64-NEXT:    std 0, 64(1)57; DEFAULT_LARGE64-NEXT:    bla .__tls_get_mod[PR]58; DEFAULT_LARGE64-NEXT:    ld 4, L..C1@l(7)59; DEFAULT_LARGE64-NEXT:    lwzx 3, 3, 460; DEFAULT_LARGE64-NEXT:    cmpwi 6, -161; DEFAULT_LARGE64-NEXT:    addi 1, 1, 4862; DEFAULT_LARGE64-NEXT:    ld 0, 16(1)63; DEFAULT_LARGE64-NEXT:    mtlr 064; DEFAULT_LARGE64-NEXT:    blr65;66; TLS_MODEL_OPT_SMALL64-LABEL: Single_LD:67; TLS_MODEL_OPT_SMALL64:       # %bb.0: # %entry68; TLS_MODEL_OPT_SMALL64-NEXT:    and 4, 3, 469; TLS_MODEL_OPT_SMALL64-NEXT:    ld 3, L..C0(2) # target-flags(ppc-tprel) @VarTLSLD170; TLS_MODEL_OPT_SMALL64-NEXT:    cmpwi 4, -171; TLS_MODEL_OPT_SMALL64-NEXT:    lwzx 3, 13, 372; TLS_MODEL_OPT_SMALL64-NEXT:    blr73;74; TLS_MODEL_OPT_LARGE64-LABEL: Single_LD:75; TLS_MODEL_OPT_LARGE64:       # %bb.0: # %entry76; TLS_MODEL_OPT_LARGE64-NEXT:    and 4, 3, 477; TLS_MODEL_OPT_LARGE64-NEXT:    addis 3, L..C0@u(2)78; TLS_MODEL_OPT_LARGE64-NEXT:    ld 3, L..C0@l(3)79; TLS_MODEL_OPT_LARGE64-NEXT:    cmpwi 4, -180; TLS_MODEL_OPT_LARGE64-NEXT:    lwzx 3, 13, 381; TLS_MODEL_OPT_LARGE64-NEXT:    blr82;83; TLS_MODEL_OPT_LIMIT2_SMALL64-LABEL: Single_LD:84; TLS_MODEL_OPT_LIMIT2_SMALL64:       # %bb.0: # %entry85; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    and 4, 3, 486; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    ld 3, L..C0(2) # target-flags(ppc-tprel) @VarTLSLD187; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    cmpwi 4, -188; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    lwzx 3, 13, 389; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    blr90;91; TLS_MODEL_OPT_LIMIT2_LARGE64-LABEL: Single_LD:92; TLS_MODEL_OPT_LIMIT2_LARGE64:       # %bb.0: # %entry93; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    and 4, 3, 494; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    addis 3, L..C0@u(2)95; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    ld 3, L..C0@l(3)96; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    cmpwi 4, -197; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    lwzx 3, 13, 398; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    blr99;100; TLS_MODEL_OPT_LIMIT3_SMALL64-LABEL: Single_LD:101; TLS_MODEL_OPT_LIMIT3_SMALL64:       # %bb.0: # %entry102; TLS_MODEL_OPT_LIMIT3_SMALL64-NEXT:    and 4, 3, 4103; TLS_MODEL_OPT_LIMIT3_SMALL64-NEXT:    ld 3, L..C0(2) # target-flags(ppc-tprel) @VarTLSLD1104; TLS_MODEL_OPT_LIMIT3_SMALL64-NEXT:    cmpwi 4, -1105; TLS_MODEL_OPT_LIMIT3_SMALL64-NEXT:    lwzx 3, 13, 3106; TLS_MODEL_OPT_LIMIT3_SMALL64-NEXT:    blr107;108; TLS_MODEL_OPT_LIMIT3_LARGE64-LABEL: Single_LD:109; TLS_MODEL_OPT_LIMIT3_LARGE64:       # %bb.0: # %entry110; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:    and 4, 3, 4111; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:    addis 3, L..C0@u(2)112; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:    ld 3, L..C0@l(3)113; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:    cmpwi 4, -1114; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:    lwzx 3, 13, 3115; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:    blr116entry:117  %a = icmp slt i32 %P, 0118  %b = icmp slt i32 %Q, 0119  %c = and i1 %a, %b120  %tls1 = tail call align 4 ptr @llvm.threadlocal.address.p0(ptr align 4 @VarTLSLD1)121  %load1 = load i32, ptr %tls1, align 4122  br i1 %c, label %bb1, label %return123 124bb1:125  %tls2 = tail call align 4 ptr @llvm.threadlocal.address.p0(ptr align 4 @VarTLSLD1)126  %load2 = load i32, ptr %tls2, align 4127  ret i32 %load2128 129return:130  ret i32 %load1131}132 133define i32 @Two_LDs(i32 %P, i32 %Q) {134; DEFAULT_SMALL64-LABEL: Two_LDs:135; DEFAULT_SMALL64:       # %bb.0: # %entry136; DEFAULT_SMALL64-NEXT:    mflr 0137; DEFAULT_SMALL64-NEXT:    stdu 1, -48(1)138; DEFAULT_SMALL64-NEXT:    and 6, 3, 4139; DEFAULT_SMALL64-NEXT:    ld 3, L..C0(2) # target-flags(ppc-tlsldm) @"_$TLSML"140; DEFAULT_SMALL64-NEXT:    std 0, 64(1)141; DEFAULT_SMALL64-NEXT:    bla .__tls_get_mod[PR]142; DEFAULT_SMALL64-NEXT:    cmpwi 6, -1143; DEFAULT_SMALL64-NEXT:    bgt 0, L..BB1_2144; DEFAULT_SMALL64-NEXT:  # %bb.1: # %bb1145; DEFAULT_SMALL64-NEXT:    ld 4, L..C2(2) # target-flags(ppc-tlsld) @VarTLSLD2146; DEFAULT_SMALL64-NEXT:    lwzx 3, 3, 4147; DEFAULT_SMALL64-NEXT:    b L..BB1_3148; DEFAULT_SMALL64-NEXT:  L..BB1_2: # %return149; DEFAULT_SMALL64-NEXT:    ld 4, L..C1(2) # target-flags(ppc-tlsld) @VarTLSLD1150; DEFAULT_SMALL64-NEXT:    lwzx 3, 3, 4151; DEFAULT_SMALL64-NEXT:  L..BB1_3: # %bb1152; DEFAULT_SMALL64-NEXT:    addi 1, 1, 48153; DEFAULT_SMALL64-NEXT:    ld 0, 16(1)154; DEFAULT_SMALL64-NEXT:    mtlr 0155; DEFAULT_SMALL64-NEXT:    blr156;157; DEFAULT_LARGE64-LABEL: Two_LDs:158; DEFAULT_LARGE64:       # %bb.0: # %entry159; DEFAULT_LARGE64-NEXT:    mflr 0160; DEFAULT_LARGE64-NEXT:    stdu 1, -48(1)161; DEFAULT_LARGE64-NEXT:    and 6, 3, 4162; DEFAULT_LARGE64-NEXT:    addis 3, L..C0@u(2)163; DEFAULT_LARGE64-NEXT:    std 0, 64(1)164; DEFAULT_LARGE64-NEXT:    ld 3, L..C0@l(3)165; DEFAULT_LARGE64-NEXT:    bla .__tls_get_mod[PR]166; DEFAULT_LARGE64-NEXT:    cmpwi 6, -1167; DEFAULT_LARGE64-NEXT:    bgt 0, L..BB1_2168; DEFAULT_LARGE64-NEXT:  # %bb.1: # %bb1169; DEFAULT_LARGE64-NEXT:    addis 4, L..C2@u(2)170; DEFAULT_LARGE64-NEXT:    ld 4, L..C2@l(4)171; DEFAULT_LARGE64-NEXT:    lwzx 3, 3, 4172; DEFAULT_LARGE64-NEXT:    b L..BB1_3173; DEFAULT_LARGE64-NEXT:  L..BB1_2: # %return174; DEFAULT_LARGE64-NEXT:    addis 4, L..C1@u(2)175; DEFAULT_LARGE64-NEXT:    ld 4, L..C1@l(4)176; DEFAULT_LARGE64-NEXT:    lwzx 3, 3, 4177; DEFAULT_LARGE64-NEXT:  L..BB1_3: # %bb1178; DEFAULT_LARGE64-NEXT:    addi 1, 1, 48179; DEFAULT_LARGE64-NEXT:    ld 0, 16(1)180; DEFAULT_LARGE64-NEXT:    mtlr 0181; DEFAULT_LARGE64-NEXT:    blr182;183; TLS_MODEL_OPT_SMALL64-LABEL: Two_LDs:184; TLS_MODEL_OPT_SMALL64:       # %bb.0: # %entry185; TLS_MODEL_OPT_SMALL64-NEXT:    mflr 0186; TLS_MODEL_OPT_SMALL64-NEXT:    stdu 1, -48(1)187; TLS_MODEL_OPT_SMALL64-NEXT:    and 6, 3, 4188; TLS_MODEL_OPT_SMALL64-NEXT:    ld 3, L..C1(2) # target-flags(ppc-tlsldm) @"_$TLSML"189; TLS_MODEL_OPT_SMALL64-NEXT:    std 0, 64(1)190; TLS_MODEL_OPT_SMALL64-NEXT:    bla .__tls_get_mod[PR]191; TLS_MODEL_OPT_SMALL64-NEXT:    cmpwi 6, -1192; TLS_MODEL_OPT_SMALL64-NEXT:    bgt 0, L..BB1_2193; TLS_MODEL_OPT_SMALL64-NEXT:  # %bb.1: # %bb1194; TLS_MODEL_OPT_SMALL64-NEXT:    ld 4, L..C2(2) # target-flags(ppc-tlsld) @VarTLSLD2195; TLS_MODEL_OPT_SMALL64-NEXT:    lwzx 3, 3, 4196; TLS_MODEL_OPT_SMALL64-NEXT:    b L..BB1_3197; TLS_MODEL_OPT_SMALL64-NEXT:  L..BB1_2: # %return198; TLS_MODEL_OPT_SMALL64-NEXT:    ld 4, L..C3(2) # target-flags(ppc-tlsld) @VarTLSLD1199; TLS_MODEL_OPT_SMALL64-NEXT:    lwzx 3, 3, 4200; TLS_MODEL_OPT_SMALL64-NEXT:  L..BB1_3: # %bb1201; TLS_MODEL_OPT_SMALL64-NEXT:    addi 1, 1, 48202; TLS_MODEL_OPT_SMALL64-NEXT:    ld 0, 16(1)203; TLS_MODEL_OPT_SMALL64-NEXT:    mtlr 0204; TLS_MODEL_OPT_SMALL64-NEXT:    blr205;206; TLS_MODEL_OPT_LARGE64-LABEL: Two_LDs:207; TLS_MODEL_OPT_LARGE64:       # %bb.0: # %entry208; TLS_MODEL_OPT_LARGE64-NEXT:    mflr 0209; TLS_MODEL_OPT_LARGE64-NEXT:    stdu 1, -48(1)210; TLS_MODEL_OPT_LARGE64-NEXT:    and 6, 3, 4211; TLS_MODEL_OPT_LARGE64-NEXT:    addis 3, L..C1@u(2)212; TLS_MODEL_OPT_LARGE64-NEXT:    std 0, 64(1)213; TLS_MODEL_OPT_LARGE64-NEXT:    ld 3, L..C1@l(3)214; TLS_MODEL_OPT_LARGE64-NEXT:    bla .__tls_get_mod[PR]215; TLS_MODEL_OPT_LARGE64-NEXT:    cmpwi 6, -1216; TLS_MODEL_OPT_LARGE64-NEXT:    bgt 0, L..BB1_2217; TLS_MODEL_OPT_LARGE64-NEXT:  # %bb.1: # %bb1218; TLS_MODEL_OPT_LARGE64-NEXT:    addis 4, L..C2@u(2)219; TLS_MODEL_OPT_LARGE64-NEXT:    ld 4, L..C2@l(4)220; TLS_MODEL_OPT_LARGE64-NEXT:    lwzx 3, 3, 4221; TLS_MODEL_OPT_LARGE64-NEXT:    b L..BB1_3222; TLS_MODEL_OPT_LARGE64-NEXT:  L..BB1_2: # %return223; TLS_MODEL_OPT_LARGE64-NEXT:    addis 4, L..C3@u(2)224; TLS_MODEL_OPT_LARGE64-NEXT:    ld 4, L..C3@l(4)225; TLS_MODEL_OPT_LARGE64-NEXT:    lwzx 3, 3, 4226; TLS_MODEL_OPT_LARGE64-NEXT:  L..BB1_3: # %bb1227; TLS_MODEL_OPT_LARGE64-NEXT:    addi 1, 1, 48228; TLS_MODEL_OPT_LARGE64-NEXT:    ld 0, 16(1)229; TLS_MODEL_OPT_LARGE64-NEXT:    mtlr 0230; TLS_MODEL_OPT_LARGE64-NEXT:    blr231;232; TLS_MODEL_OPT_LIMIT2_SMALL64-LABEL: Two_LDs:233; TLS_MODEL_OPT_LIMIT2_SMALL64:       # %bb.0: # %entry234; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    and 3, 3, 4235; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    cmpwi 3, -1236; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    bgt 0, L..BB1_2237; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:  # %bb.1: # %bb1238; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    ld 3, L..C1(2) # target-flags(ppc-tprel) @VarTLSLD2239; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    lwzx 3, 13, 3240; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    blr241; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:  L..BB1_2: # %return242; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    ld 3, L..C0(2) # target-flags(ppc-tprel) @VarTLSLD1243; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    lwzx 3, 13, 3244; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    blr245;246; TLS_MODEL_OPT_LIMIT2_LARGE64-LABEL: Two_LDs:247; TLS_MODEL_OPT_LIMIT2_LARGE64:       # %bb.0: # %entry248; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    and 3, 3, 4249; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    cmpwi 3, -1250; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    bgt 0, L..BB1_2251; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:  # %bb.1: # %bb1252; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    addis 3, L..C1@u(2)253; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    ld 3, L..C1@l(3)254; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    lwzx 3, 13, 3255; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    blr256; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:  L..BB1_2: # %return257; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    addis 3, L..C0@u(2)258; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    ld 3, L..C0@l(3)259; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    lwzx 3, 13, 3260; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    blr261;262; TLS_MODEL_OPT_LIMIT3_SMALL64-LABEL: Two_LDs:263; TLS_MODEL_OPT_LIMIT3_SMALL64:       # %bb.0: # %entry264; TLS_MODEL_OPT_LIMIT3_SMALL64-NEXT:    and 3, 3, 4265; TLS_MODEL_OPT_LIMIT3_SMALL64-NEXT:    cmpwi 3, -1266; TLS_MODEL_OPT_LIMIT3_SMALL64-NEXT:    bgt 0, L..BB1_2267; TLS_MODEL_OPT_LIMIT3_SMALL64-NEXT:  # %bb.1: # %bb1268; TLS_MODEL_OPT_LIMIT3_SMALL64-NEXT:    ld 3, L..C1(2) # target-flags(ppc-tprel) @VarTLSLD2269; TLS_MODEL_OPT_LIMIT3_SMALL64-NEXT:    lwzx 3, 13, 3270; TLS_MODEL_OPT_LIMIT3_SMALL64-NEXT:    blr271; TLS_MODEL_OPT_LIMIT3_SMALL64-NEXT:  L..BB1_2: # %return272; TLS_MODEL_OPT_LIMIT3_SMALL64-NEXT:    ld 3, L..C0(2) # target-flags(ppc-tprel) @VarTLSLD1273; TLS_MODEL_OPT_LIMIT3_SMALL64-NEXT:    lwzx 3, 13, 3274; TLS_MODEL_OPT_LIMIT3_SMALL64-NEXT:    blr275;276; TLS_MODEL_OPT_LIMIT3_LARGE64-LABEL: Two_LDs:277; TLS_MODEL_OPT_LIMIT3_LARGE64:       # %bb.0: # %entry278; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:    and 3, 3, 4279; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:    cmpwi 3, -1280; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:    bgt 0, L..BB1_2281; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:  # %bb.1: # %bb1282; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:    addis 3, L..C1@u(2)283; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:    ld 3, L..C1@l(3)284; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:    lwzx 3, 13, 3285; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:    blr286; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:  L..BB1_2: # %return287; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:    addis 3, L..C0@u(2)288; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:    ld 3, L..C0@l(3)289; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:    lwzx 3, 13, 3290; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:    blr291entry:292  %a = icmp slt i32 %P, 0293  %b = icmp slt i32 %Q, 0294  %c = and i1 %a, %b295  %tls1 = tail call align 4 ptr @llvm.threadlocal.address.p0(ptr align 4 @VarTLSLD1)296  %load1 = load i32, ptr %tls1, align 4297  br i1 %c, label %bb1, label %return298 299bb1:300  %tls2 = tail call align 4 ptr @llvm.threadlocal.address.p0(ptr align 4 @VarTLSLD2)301  %load2 = load i32, ptr %tls2, align 4302  ret i32 %load2303 304return:305  ret i32 %load1306}307 308define i32 @Three_LDs(i32 %P, i32 %Q) {309; DEFAULT_SMALL64-LABEL: Three_LDs:310; DEFAULT_SMALL64:       # %bb.0: # %entry311; DEFAULT_SMALL64-NEXT:    mflr 0312; DEFAULT_SMALL64-NEXT:    stdu 1, -48(1)313; DEFAULT_SMALL64-NEXT:    and 6, 3, 4314; DEFAULT_SMALL64-NEXT:    ld 3, L..C0(2) # target-flags(ppc-tlsldm) @"_$TLSML"315; DEFAULT_SMALL64-NEXT:    std 0, 64(1)316; DEFAULT_SMALL64-NEXT:    bla .__tls_get_mod[PR]317; DEFAULT_SMALL64-NEXT:    cmpwi 6, -1318; DEFAULT_SMALL64-NEXT:    bgt 0, L..BB2_2319; DEFAULT_SMALL64-NEXT:  # %bb.1: # %bb1320; DEFAULT_SMALL64-NEXT:    ld 4, L..C2(2) # target-flags(ppc-tlsld) @VarTLSLD2321; DEFAULT_SMALL64-NEXT:    ld 5, L..C3(2) # target-flags(ppc-tlsld) @VarTLSLD3322; DEFAULT_SMALL64-NEXT:    lwzx 4, 3, 4323; DEFAULT_SMALL64-NEXT:    lwzx 3, 3, 5324; DEFAULT_SMALL64-NEXT:    add 3, 4, 3325; DEFAULT_SMALL64-NEXT:    b L..BB2_3326; DEFAULT_SMALL64-NEXT:  L..BB2_2: # %return327; DEFAULT_SMALL64-NEXT:    ld 4, L..C1(2) # target-flags(ppc-tlsld) @VarTLSLD1328; DEFAULT_SMALL64-NEXT:    lwzx 3, 3, 4329; DEFAULT_SMALL64-NEXT:  L..BB2_3: # %return330; DEFAULT_SMALL64-NEXT:    addi 1, 1, 48331; DEFAULT_SMALL64-NEXT:    ld 0, 16(1)332; DEFAULT_SMALL64-NEXT:    mtlr 0333; DEFAULT_SMALL64-NEXT:    blr334;335; DEFAULT_LARGE64-LABEL: Three_LDs:336; DEFAULT_LARGE64:       # %bb.0: # %entry337; DEFAULT_LARGE64-NEXT:    mflr 0338; DEFAULT_LARGE64-NEXT:    stdu 1, -48(1)339; DEFAULT_LARGE64-NEXT:    and 6, 3, 4340; DEFAULT_LARGE64-NEXT:    addis 3, L..C0@u(2)341; DEFAULT_LARGE64-NEXT:    std 0, 64(1)342; DEFAULT_LARGE64-NEXT:    ld 3, L..C0@l(3)343; DEFAULT_LARGE64-NEXT:    bla .__tls_get_mod[PR]344; DEFAULT_LARGE64-NEXT:    cmpwi 6, -1345; DEFAULT_LARGE64-NEXT:    bgt 0, L..BB2_2346; DEFAULT_LARGE64-NEXT:  # %bb.1: # %bb1347; DEFAULT_LARGE64-NEXT:    addis 4, L..C2@u(2)348; DEFAULT_LARGE64-NEXT:    addis 5, L..C3@u(2)349; DEFAULT_LARGE64-NEXT:    ld 4, L..C2@l(4)350; DEFAULT_LARGE64-NEXT:    ld 5, L..C3@l(5)351; DEFAULT_LARGE64-NEXT:    lwzx 4, 3, 4352; DEFAULT_LARGE64-NEXT:    lwzx 3, 3, 5353; DEFAULT_LARGE64-NEXT:    add 3, 4, 3354; DEFAULT_LARGE64-NEXT:    b L..BB2_3355; DEFAULT_LARGE64-NEXT:  L..BB2_2: # %return356; DEFAULT_LARGE64-NEXT:    addis 4, L..C1@u(2)357; DEFAULT_LARGE64-NEXT:    ld 4, L..C1@l(4)358; DEFAULT_LARGE64-NEXT:    lwzx 3, 3, 4359; DEFAULT_LARGE64-NEXT:  L..BB2_3: # %return360; DEFAULT_LARGE64-NEXT:    addi 1, 1, 48361; DEFAULT_LARGE64-NEXT:    ld 0, 16(1)362; DEFAULT_LARGE64-NEXT:    mtlr 0363; DEFAULT_LARGE64-NEXT:    blr364;365; TLS_MODEL_OPT_SMALL64-LABEL: Three_LDs:366; TLS_MODEL_OPT_SMALL64:       # %bb.0: # %entry367; TLS_MODEL_OPT_SMALL64-NEXT:    mflr 0368; TLS_MODEL_OPT_SMALL64-NEXT:    stdu 1, -48(1)369; TLS_MODEL_OPT_SMALL64-NEXT:    and 6, 3, 4370; TLS_MODEL_OPT_SMALL64-NEXT:    ld 3, L..C1(2) # target-flags(ppc-tlsldm) @"_$TLSML"371; TLS_MODEL_OPT_SMALL64-NEXT:    std 0, 64(1)372; TLS_MODEL_OPT_SMALL64-NEXT:    bla .__tls_get_mod[PR]373; TLS_MODEL_OPT_SMALL64-NEXT:    cmpwi 6, -1374; TLS_MODEL_OPT_SMALL64-NEXT:    bgt 0, L..BB2_2375; TLS_MODEL_OPT_SMALL64-NEXT:  # %bb.1: # %bb1376; TLS_MODEL_OPT_SMALL64-NEXT:    ld 4, L..C2(2) # target-flags(ppc-tlsld) @VarTLSLD2377; TLS_MODEL_OPT_SMALL64-NEXT:    ld 5, L..C4(2) # target-flags(ppc-tlsld) @VarTLSLD3378; TLS_MODEL_OPT_SMALL64-NEXT:    lwzx 4, 3, 4379; TLS_MODEL_OPT_SMALL64-NEXT:    lwzx 3, 3, 5380; TLS_MODEL_OPT_SMALL64-NEXT:    add 3, 4, 3381; TLS_MODEL_OPT_SMALL64-NEXT:    b L..BB2_3382; TLS_MODEL_OPT_SMALL64-NEXT:  L..BB2_2: # %return383; TLS_MODEL_OPT_SMALL64-NEXT:    ld 4, L..C3(2) # target-flags(ppc-tlsld) @VarTLSLD1384; TLS_MODEL_OPT_SMALL64-NEXT:    lwzx 3, 3, 4385; TLS_MODEL_OPT_SMALL64-NEXT:  L..BB2_3: # %return386; TLS_MODEL_OPT_SMALL64-NEXT:    addi 1, 1, 48387; TLS_MODEL_OPT_SMALL64-NEXT:    ld 0, 16(1)388; TLS_MODEL_OPT_SMALL64-NEXT:    mtlr 0389; TLS_MODEL_OPT_SMALL64-NEXT:    blr390;391; TLS_MODEL_OPT_LARGE64-LABEL: Three_LDs:392; TLS_MODEL_OPT_LARGE64:       # %bb.0: # %entry393; TLS_MODEL_OPT_LARGE64-NEXT:    mflr 0394; TLS_MODEL_OPT_LARGE64-NEXT:    stdu 1, -48(1)395; TLS_MODEL_OPT_LARGE64-NEXT:    and 6, 3, 4396; TLS_MODEL_OPT_LARGE64-NEXT:    addis 3, L..C1@u(2)397; TLS_MODEL_OPT_LARGE64-NEXT:    std 0, 64(1)398; TLS_MODEL_OPT_LARGE64-NEXT:    ld 3, L..C1@l(3)399; TLS_MODEL_OPT_LARGE64-NEXT:    bla .__tls_get_mod[PR]400; TLS_MODEL_OPT_LARGE64-NEXT:    cmpwi 6, -1401; TLS_MODEL_OPT_LARGE64-NEXT:    bgt 0, L..BB2_2402; TLS_MODEL_OPT_LARGE64-NEXT:  # %bb.1: # %bb1403; TLS_MODEL_OPT_LARGE64-NEXT:    addis 4, L..C2@u(2)404; TLS_MODEL_OPT_LARGE64-NEXT:    addis 5, L..C4@u(2)405; TLS_MODEL_OPT_LARGE64-NEXT:    ld 4, L..C2@l(4)406; TLS_MODEL_OPT_LARGE64-NEXT:    ld 5, L..C4@l(5)407; TLS_MODEL_OPT_LARGE64-NEXT:    lwzx 4, 3, 4408; TLS_MODEL_OPT_LARGE64-NEXT:    lwzx 3, 3, 5409; TLS_MODEL_OPT_LARGE64-NEXT:    add 3, 4, 3410; TLS_MODEL_OPT_LARGE64-NEXT:    b L..BB2_3411; TLS_MODEL_OPT_LARGE64-NEXT:  L..BB2_2: # %return412; TLS_MODEL_OPT_LARGE64-NEXT:    addis 4, L..C3@u(2)413; TLS_MODEL_OPT_LARGE64-NEXT:    ld 4, L..C3@l(4)414; TLS_MODEL_OPT_LARGE64-NEXT:    lwzx 3, 3, 4415; TLS_MODEL_OPT_LARGE64-NEXT:  L..BB2_3: # %return416; TLS_MODEL_OPT_LARGE64-NEXT:    addi 1, 1, 48417; TLS_MODEL_OPT_LARGE64-NEXT:    ld 0, 16(1)418; TLS_MODEL_OPT_LARGE64-NEXT:    mtlr 0419; TLS_MODEL_OPT_LARGE64-NEXT:    blr420;421; TLS_MODEL_OPT_LIMIT2_SMALL64-LABEL: Three_LDs:422; TLS_MODEL_OPT_LIMIT2_SMALL64:       # %bb.0: # %entry423; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    mflr 0424; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    stdu 1, -48(1)425; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    and 6, 3, 4426; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    ld 3, L..C2(2) # target-flags(ppc-tlsldm) @"_$TLSML"427; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    std 0, 64(1)428; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    bla .__tls_get_mod[PR]429; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    cmpwi 6, -1430; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    bgt 0, L..BB2_2431; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:  # %bb.1: # %bb1432; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    ld 4, L..C3(2) # target-flags(ppc-tlsld) @VarTLSLD2433; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    ld 5, L..C4(2) # target-flags(ppc-tlsld) @VarTLSLD3434; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    lwzx 4, 3, 4435; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    lwzx 3, 3, 5436; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    add 3, 4, 3437; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    b L..BB2_3438; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:  L..BB2_2: # %return439; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    ld 4, L..C5(2) # target-flags(ppc-tlsld) @VarTLSLD1440; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    lwzx 3, 3, 4441; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:  L..BB2_3: # %return442; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    addi 1, 1, 48443; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    ld 0, 16(1)444; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    mtlr 0445; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT:    blr446;447; TLS_MODEL_OPT_LIMIT2_LARGE64-LABEL: Three_LDs:448; TLS_MODEL_OPT_LIMIT2_LARGE64:       # %bb.0: # %entry449; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    mflr 0450; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    stdu 1, -48(1)451; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    and 6, 3, 4452; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    addis 3, L..C2@u(2)453; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    std 0, 64(1)454; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    ld 3, L..C2@l(3)455; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    bla .__tls_get_mod[PR]456; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    cmpwi 6, -1457; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    bgt 0, L..BB2_2458; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:  # %bb.1: # %bb1459; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    addis 4, L..C3@u(2)460; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    addis 5, L..C4@u(2)461; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    ld 4, L..C3@l(4)462; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    ld 5, L..C4@l(5)463; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    lwzx 4, 3, 4464; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    lwzx 3, 3, 5465; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    add 3, 4, 3466; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    b L..BB2_3467; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:  L..BB2_2: # %return468; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    addis 4, L..C5@u(2)469; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    ld 4, L..C5@l(4)470; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    lwzx 3, 3, 4471; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:  L..BB2_3: # %return472; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    addi 1, 1, 48473; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    ld 0, 16(1)474; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    mtlr 0475; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT:    blr476;477; TLS_MODEL_OPT_LIMIT3_SMALL64-LABEL: Three_LDs:478; TLS_MODEL_OPT_LIMIT3_SMALL64:       # %bb.0: # %entry479; TLS_MODEL_OPT_LIMIT3_SMALL64-NEXT:    and 3, 3, 4480; TLS_MODEL_OPT_LIMIT3_SMALL64-NEXT:    cmpwi 3, -1481; TLS_MODEL_OPT_LIMIT3_SMALL64-NEXT:    bgt 0, L..BB2_2482; TLS_MODEL_OPT_LIMIT3_SMALL64-NEXT:  # %bb.1: # %bb1483; TLS_MODEL_OPT_LIMIT3_SMALL64-NEXT:    ld 3, L..C1(2) # target-flags(ppc-tprel) @VarTLSLD2484; TLS_MODEL_OPT_LIMIT3_SMALL64-NEXT:    ld 4, L..C2(2) # target-flags(ppc-tprel) @VarTLSLD3485; TLS_MODEL_OPT_LIMIT3_SMALL64-NEXT:    lwzx 3, 13, 3486; TLS_MODEL_OPT_LIMIT3_SMALL64-NEXT:    lwzx 4, 13, 4487; TLS_MODEL_OPT_LIMIT3_SMALL64-NEXT:    add 3, 3, 4488; TLS_MODEL_OPT_LIMIT3_SMALL64-NEXT:    blr489; TLS_MODEL_OPT_LIMIT3_SMALL64-NEXT:  L..BB2_2: # %return490; TLS_MODEL_OPT_LIMIT3_SMALL64-NEXT:    ld 3, L..C0(2) # target-flags(ppc-tprel) @VarTLSLD1491; TLS_MODEL_OPT_LIMIT3_SMALL64-NEXT:    lwzx 3, 13, 3492; TLS_MODEL_OPT_LIMIT3_SMALL64-NEXT:    blr493;494; TLS_MODEL_OPT_LIMIT3_LARGE64-LABEL: Three_LDs:495; TLS_MODEL_OPT_LIMIT3_LARGE64:       # %bb.0: # %entry496; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:    and 3, 3, 4497; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:    cmpwi 3, -1498; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:    bgt 0, L..BB2_2499; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:  # %bb.1: # %bb1500; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:    addis 3, L..C1@u(2)501; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:    addis 4, L..C2@u(2)502; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:    ld 3, L..C1@l(3)503; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:    ld 4, L..C2@l(4)504; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:    lwzx 3, 13, 3505; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:    lwzx 4, 13, 4506; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:    add 3, 3, 4507; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:    blr508; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:  L..BB2_2: # %return509; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:    addis 3, L..C0@u(2)510; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:    ld 3, L..C0@l(3)511; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:    lwzx 3, 13, 3512; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT:    blr513entry:514  %a = icmp slt i32 %P, 0515  %b = icmp slt i32 %Q, 0516  %c = and i1 %a, %b517  %tls1 = tail call align 4 ptr @llvm.threadlocal.address.p0(ptr align 4 @VarTLSLD1)518  %load1 = load i32, ptr %tls1, align 4519  br i1 %c, label %bb1, label %return520 521bb1:522  %tls2 = tail call align 4 ptr @llvm.threadlocal.address.p0(ptr align 4 @VarTLSLD2)523  %load2 = load i32, ptr %tls2, align 4524  %tls3 = tail call align 4 ptr @llvm.threadlocal.address.p0(ptr align 4 @VarTLSLD3)525  %load3 = load i32, ptr %tls3, align 4526  %sum = add i32 %load2, %load3527  ret i32 %sum528 529return:530  ret i32 %load1531}532 533declare nonnull ptr @llvm.threadlocal.address.p0(ptr nonnull)534 535; DEFAULT_SMALL64-LABEL: .toc536; DEFAULT_SMALL64-LABEL: L..C0:537; DEFAULT_SMALL64-NEXT: .tc _Renamed..5f24__TLSML[TC],_Renamed..5f24__TLSML[TC]@ml538; DEFAULT_SMALL64-NEXT: .rename _Renamed..5f24__TLSML[TC],"_$TLSML"539; DEFAULT_SMALL64-LABEL: L..C1:540; DEFAULT_SMALL64-NEXT: .tc VarTLSLD1[TC],VarTLSLD1[TL]@ld541; DEFAULT_SMALL64-LABEL: L..C2:542; DEFAULT_SMALL64-NEXT: .tc VarTLSLD2[TC],VarTLSLD2[UL]@ld543; DEFAULT_SMALL64-LABEL: L..C3:544; DEFAULT_SMALL64-NEXT: .tc VarTLSLD3[TC],VarTLSLD3[UL]@ld545 546; DEFAULT_LARGE64-LABEL: .toc547; DEFAULT_LARGE64-LABEL: L..C0:548; DEFAULT_LARGE64-NEXT: .tc _Renamed..5f24__TLSML[TC],_Renamed..5f24__TLSML[TC]@ml549; DEFAULT_LARGE64-NEXT: .rename _Renamed..5f24__TLSML[TC],"_$TLSML"550; DEFAULT_LARGE64-LABEL: L..C1:551; DEFAULT_LARGE64-NEXT: .tc VarTLSLD1[TE],VarTLSLD1[TL]@ld552; DEFAULT_LARGE64-LABEL: L..C2:553; DEFAULT_LARGE64-NEXT: .tc VarTLSLD2[TE],VarTLSLD2[UL]@ld554; DEFAULT_LARGE64-LABEL: L..C3:555; DEFAULT_LARGE64-NEXT: .tc VarTLSLD3[TE],VarTLSLD3[UL]@ld556 557; TLS_MODEL_OPT_SMALL64-LABEL: .toc558; TLS_MODEL_OPT_SMALL64-LABEL: L..C0:559; TLS_MODEL_OPT_SMALL64-NEXT: .tc VarTLSLD1[TC],VarTLSLD1[TL]@ie560; TLS_MODEL_OPT_SMALL64-LABEL: L..C1:561; TLS_MODEL_OPT_SMALL64-NEXT: .tc _Renamed..5f24__TLSML[TC],_Renamed..5f24__TLSML[TC]@ml562; TLS_MODEL_OPT_SMALL64-NEXT: .rename _Renamed..5f24__TLSML[TC],"_$TLSML"563; TLS_MODEL_OPT_SMALL64-LABEL: L..C2:564; TLS_MODEL_OPT_SMALL64-NEXT: .tc .VarTLSLD2[TC],VarTLSLD2[UL]@ld565; TLS_MODEL_OPT_SMALL64-LABEL: L..C3:566; TLS_MODEL_OPT_SMALL64-NEXT: .tc .VarTLSLD1[TC],VarTLSLD1[TL]@ld567; TLS_MODEL_OPT_SMALL64-LABEL: L..C4:568; TLS_MODEL_OPT_SMALL64-NEXT: .tc .VarTLSLD3[TC],VarTLSLD3[UL]@ld569 570; TLS_MODEL_OPT_LARGE64-LABEL: .toc571; TLS_MODEL_OPT_LARGE64-LABEL: L..C0:572; TLS_MODEL_OPT_LARGE64-NEXT: .tc VarTLSLD1[TE],VarTLSLD1[TL]@ie573; TLS_MODEL_OPT_LARGE64-LABEL: L..C1:574; TLS_MODEL_OPT_LARGE64-NEXT: .tc _Renamed..5f24__TLSML[TC],_Renamed..5f24__TLSML[TC]@ml575; TLS_MODEL_OPT_LARGE64-NEXT: .rename _Renamed..5f24__TLSML[TC],"_$TLSML"576; TLS_MODEL_OPT_LARGE64-LABEL: L..C2:577; TLS_MODEL_OPT_LARGE64-NEXT: .tc .VarTLSLD2[TE],VarTLSLD2[UL]@ld578; TLS_MODEL_OPT_LARGE64-LABEL: L..C3:579; TLS_MODEL_OPT_LARGE64-NEXT: .tc .VarTLSLD1[TE],VarTLSLD1[TL]@ld580; TLS_MODEL_OPT_LARGE64-LABEL: L..C4:581; TLS_MODEL_OPT_LARGE64-NEXT: .tc .VarTLSLD3[TE],VarTLSLD3[UL]@ld582 583; TLS_MODEL_OPT_LIMIT2_SMALL64-LABEL: .toc584; TLS_MODEL_OPT_LIMIT2_SMALL64-LABEL: L..C0:585; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT: .tc VarTLSLD1[TC],VarTLSLD1[TL]@ie586; TLS_MODEL_OPT_LIMIT2_SMALL64-LABEL: L..C1:587; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT: .tc VarTLSLD2[TC],VarTLSLD2[UL]@ie588; TLS_MODEL_OPT_LIMIT2_SMALL64-LABEL: L..C2:589; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT: .tc _Renamed..5f24__TLSML[TC],_Renamed..5f24__TLSML[TC]@ml590; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT: .rename _Renamed..5f24__TLSML[TC],"_$TLSML"591; TLS_MODEL_OPT_LIMIT2_SMALL64-LABEL: L..C3:592; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT: .tc .VarTLSLD2[TC],VarTLSLD2[UL]@ld593; TLS_MODEL_OPT_LIMIT2_SMALL64-LABEL: L..C4:594; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT: .tc .VarTLSLD3[TC],VarTLSLD3[UL]@ld595; TLS_MODEL_OPT_LIMIT2_SMALL64-LABEL: L..C5:596; TLS_MODEL_OPT_LIMIT2_SMALL64-NEXT: .tc .VarTLSLD1[TC],VarTLSLD1[TL]@ld597 598; TLS_MODEL_OPT_LIMIT2_LARGE64-LABEL: .toc599; TLS_MODEL_OPT_LIMIT2_LARGE64-LABEL: L..C0:600; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT: .tc VarTLSLD1[TE],VarTLSLD1[TL]@ie601; TLS_MODEL_OPT_LIMIT2_LARGE64-LABEL: L..C1:602; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT: .tc VarTLSLD2[TE],VarTLSLD2[UL]@ie603; TLS_MODEL_OPT_LIMIT2_LARGE64-LABEL: L..C2:604; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT: .tc _Renamed..5f24__TLSML[TC],_Renamed..5f24__TLSML[TC]@ml605; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT: .rename _Renamed..5f24__TLSML[TC],"_$TLSML"606; TLS_MODEL_OPT_LIMIT2_LARGE64-LABEL: L..C3:607; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT: .tc .VarTLSLD2[TE],VarTLSLD2[UL]@ld608; TLS_MODEL_OPT_LIMIT2_LARGE64-LABEL: L..C4:609; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT: .tc .VarTLSLD3[TE],VarTLSLD3[UL]@ld610; TLS_MODEL_OPT_LIMIT2_LARGE64-LABEL: L..C5:611; TLS_MODEL_OPT_LIMIT2_LARGE64-NEXT: .tc .VarTLSLD1[TE],VarTLSLD1[TL]@ld612 613; TLS_MODEL_OPT_LIMIT3_SMALL64-LABEL: .toc614; TLS_MODEL_OPT_LIMIT3_SMALL64-LABEL: L..C0:615; TLS_MODEL_OPT_LIMIT3_SMALL64-NEXT: .tc VarTLSLD1[TC],VarTLSLD1[TL]@ie616; TLS_MODEL_OPT_LIMIT3_SMALL64-LABEL: L..C1:617; TLS_MODEL_OPT_LIMIT3_SMALL64-NEXT: .tc VarTLSLD2[TC],VarTLSLD2[UL]@ie618; TLS_MODEL_OPT_LIMIT3_SMALL64-LABEL: L..C2:619; TLS_MODEL_OPT_LIMIT3_SMALL64-NEXT: .tc VarTLSLD3[TC],VarTLSLD3[UL]@ie620 621; TLS_MODEL_OPT_LIMIT3_LARGE64-LABEL: .toc622; TLS_MODEL_OPT_LIMIT3_LARGE64-LABEL: L..C0:623; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT: .tc VarTLSLD1[TE],VarTLSLD1[TL]@ie624; TLS_MODEL_OPT_LIMIT3_LARGE64-LABEL: L..C1:625; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT: .tc VarTLSLD2[TE],VarTLSLD2[UL]@ie626; TLS_MODEL_OPT_LIMIT3_LARGE64-LABEL: L..C2:627; TLS_MODEL_OPT_LIMIT3_LARGE64-NEXT: .tc VarTLSLD3[TE],VarTLSLD3[UL]@ie628