@@ -54,6 +54,7 @@ target triple = "x86_64--linux"
54
54
@extern_data = external global [10 x i32 ], align 16
55
55
@thread_data = external thread_local global i32 , align 4
56
56
@unknown_size_data = dso_local global [0 x i32 ] zeroinitializer , align 16
57
+ @bool = dso_local global i1 false
57
58
@opaque = external dso_local global %t
58
59
@forced_small_data = dso_local global [10 x i32 ] zeroinitializer , code_model "small" , align 16
59
60
@forced_large_data = dso_local global [10 x i32 ] zeroinitializer , code_model "large" , align 16
@@ -746,6 +747,66 @@ define dso_local i32 @load_unknown_size_data() #0 {
746
747
ret i32 %rv
747
748
}
748
749
750
+ define dso_local i1 @load_bool () #0 {
751
+ ; SMALL-STATIC-LABEL: load_bool:
752
+ ; SMALL-STATIC: # %bb.0:
753
+ ; SMALL-STATIC-NEXT: movzbl bool(%rip), %eax
754
+ ; SMALL-STATIC-NEXT: retq
755
+ ;
756
+ ; MEDIUM-STATIC-LABEL: load_bool:
757
+ ; MEDIUM-STATIC: # %bb.0:
758
+ ; MEDIUM-STATIC-NEXT: movabsq $bool, %rax
759
+ ; MEDIUM-STATIC-NEXT: movzbl (%rax), %eax
760
+ ; MEDIUM-STATIC-NEXT: retq
761
+ ;
762
+ ; LARGE-STATIC-LABEL: load_bool:
763
+ ; LARGE-STATIC: # %bb.0:
764
+ ; LARGE-STATIC-NEXT: movabsq $bool, %rax
765
+ ; LARGE-STATIC-NEXT: movzbl (%rax), %eax
766
+ ; LARGE-STATIC-NEXT: retq
767
+ ;
768
+ ; SMALL-PIC-LABEL: load_bool:
769
+ ; SMALL-PIC: # %bb.0:
770
+ ; SMALL-PIC-NEXT: movzbl bool(%rip), %eax
771
+ ; SMALL-PIC-NEXT: retq
772
+ ;
773
+ ; MEDIUM-SMALL-DATA-PIC-LABEL: load_bool:
774
+ ; MEDIUM-SMALL-DATA-PIC: # %bb.0:
775
+ ; MEDIUM-SMALL-DATA-PIC-NEXT: leaq _GLOBAL_OFFSET_TABLE_(%rip), %rax
776
+ ; MEDIUM-SMALL-DATA-PIC-NEXT: movabsq $bool@GOTOFF, %rcx
777
+ ; MEDIUM-SMALL-DATA-PIC-NEXT: movzbl (%rax,%rcx), %eax
778
+ ; MEDIUM-SMALL-DATA-PIC-NEXT: retq
779
+ ;
780
+ ; MEDIUM-PIC-LABEL: load_bool:
781
+ ; MEDIUM-PIC: # %bb.0:
782
+ ; MEDIUM-PIC-NEXT: leaq _GLOBAL_OFFSET_TABLE_(%rip), %rax
783
+ ; MEDIUM-PIC-NEXT: movabsq $bool@GOTOFF, %rcx
784
+ ; MEDIUM-PIC-NEXT: movzbl (%rax,%rcx), %eax
785
+ ; MEDIUM-PIC-NEXT: retq
786
+ ;
787
+ ; LARGE-PIC-LABEL: load_bool:
788
+ ; LARGE-PIC: # %bb.0:
789
+ ; LARGE-PIC-NEXT: .L12$pb:
790
+ ; LARGE-PIC-NEXT: leaq .L12$pb(%rip), %rax
791
+ ; LARGE-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L12$pb, %rcx
792
+ ; LARGE-PIC-NEXT: addq %rax, %rcx
793
+ ; LARGE-PIC-NEXT: movabsq $bool@GOTOFF, %rax
794
+ ; LARGE-PIC-NEXT: movzbl (%rcx,%rax), %eax
795
+ ; LARGE-PIC-NEXT: retq
796
+ ;
797
+ ; LARGE-SMALL-DATA-PIC-LABEL: load_bool:
798
+ ; LARGE-SMALL-DATA-PIC: # %bb.0:
799
+ ; LARGE-SMALL-DATA-PIC-NEXT: .L12$pb:
800
+ ; LARGE-SMALL-DATA-PIC-NEXT: leaq .L12$pb(%rip), %rax
801
+ ; LARGE-SMALL-DATA-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L12$pb, %rcx
802
+ ; LARGE-SMALL-DATA-PIC-NEXT: addq %rax, %rcx
803
+ ; LARGE-SMALL-DATA-PIC-NEXT: movabsq $bool@GOTOFF, %rax
804
+ ; LARGE-SMALL-DATA-PIC-NEXT: movzbl (%rcx,%rax), %eax
805
+ ; LARGE-SMALL-DATA-PIC-NEXT: retq
806
+ %rv = load i1 , ptr @bool
807
+ ret i1 %rv
808
+ }
809
+
749
810
define dso_local ptr @lea_opaque () #0 {
750
811
; SMALL-STATIC-LABEL: lea_opaque:
751
812
; SMALL-STATIC: # %bb.0:
@@ -783,19 +844,19 @@ define dso_local ptr @lea_opaque() #0 {
783
844
;
784
845
; LARGE-PIC-LABEL: lea_opaque:
785
846
; LARGE-PIC: # %bb.0:
786
- ; LARGE-PIC-NEXT: .L12 $pb:
787
- ; LARGE-PIC-NEXT: leaq .L12 $pb(%rip), %rax
788
- ; LARGE-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L12 $pb, %rcx
847
+ ; LARGE-PIC-NEXT: .L13 $pb:
848
+ ; LARGE-PIC-NEXT: leaq .L13 $pb(%rip), %rax
849
+ ; LARGE-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L13 $pb, %rcx
789
850
; LARGE-PIC-NEXT: addq %rax, %rcx
790
851
; LARGE-PIC-NEXT: movabsq $opaque@GOTOFF, %rax
791
852
; LARGE-PIC-NEXT: addq %rcx, %rax
792
853
; LARGE-PIC-NEXT: retq
793
854
;
794
855
; LARGE-SMALL-DATA-PIC-LABEL: lea_opaque:
795
856
; LARGE-SMALL-DATA-PIC: # %bb.0:
796
- ; LARGE-SMALL-DATA-PIC-NEXT: .L12 $pb:
797
- ; LARGE-SMALL-DATA-PIC-NEXT: leaq .L12 $pb(%rip), %rax
798
- ; LARGE-SMALL-DATA-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L12 $pb, %rcx
857
+ ; LARGE-SMALL-DATA-PIC-NEXT: .L13 $pb:
858
+ ; LARGE-SMALL-DATA-PIC-NEXT: leaq .L13 $pb(%rip), %rax
859
+ ; LARGE-SMALL-DATA-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L13 $pb, %rcx
799
860
; LARGE-SMALL-DATA-PIC-NEXT: addq %rax, %rcx
800
861
; LARGE-SMALL-DATA-PIC-NEXT: movabsq $opaque@GOTOFF, %rax
801
862
; LARGE-SMALL-DATA-PIC-NEXT: addq %rcx, %rax
@@ -840,19 +901,19 @@ define dso_local ptr @lea_ehdr_start() #0 {
840
901
;
841
902
; LARGE-PIC-LABEL: lea_ehdr_start:
842
903
; LARGE-PIC: # %bb.0:
843
- ; LARGE-PIC-NEXT: .L13 $pb:
844
- ; LARGE-PIC-NEXT: leaq .L13 $pb(%rip), %rax
845
- ; LARGE-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L13 $pb, %rcx
904
+ ; LARGE-PIC-NEXT: .L14 $pb:
905
+ ; LARGE-PIC-NEXT: leaq .L14 $pb(%rip), %rax
906
+ ; LARGE-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L14 $pb, %rcx
846
907
; LARGE-PIC-NEXT: addq %rax, %rcx
847
908
; LARGE-PIC-NEXT: movabsq $__ehdr_start@GOTOFF, %rax
848
909
; LARGE-PIC-NEXT: addq %rcx, %rax
849
910
; LARGE-PIC-NEXT: retq
850
911
;
851
912
; LARGE-SMALL-DATA-PIC-LABEL: lea_ehdr_start:
852
913
; LARGE-SMALL-DATA-PIC: # %bb.0:
853
- ; LARGE-SMALL-DATA-PIC-NEXT: .L13 $pb:
854
- ; LARGE-SMALL-DATA-PIC-NEXT: leaq .L13 $pb(%rip), %rax
855
- ; LARGE-SMALL-DATA-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L13 $pb, %rcx
914
+ ; LARGE-SMALL-DATA-PIC-NEXT: .L14 $pb:
915
+ ; LARGE-SMALL-DATA-PIC-NEXT: leaq .L14 $pb(%rip), %rax
916
+ ; LARGE-SMALL-DATA-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L14 $pb, %rcx
856
917
; LARGE-SMALL-DATA-PIC-NEXT: addq %rax, %rcx
857
918
; LARGE-SMALL-DATA-PIC-NEXT: movabsq $__ehdr_start@GOTOFF, %rax
858
919
; LARGE-SMALL-DATA-PIC-NEXT: addq %rcx, %rax
@@ -897,19 +958,19 @@ define dso_local ptr @lea_start_foo() #0 {
897
958
;
898
959
; LARGE-PIC-LABEL: lea_start_foo:
899
960
; LARGE-PIC: # %bb.0:
900
- ; LARGE-PIC-NEXT: .L14 $pb:
901
- ; LARGE-PIC-NEXT: leaq .L14 $pb(%rip), %rax
902
- ; LARGE-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L14 $pb, %rcx
961
+ ; LARGE-PIC-NEXT: .L15 $pb:
962
+ ; LARGE-PIC-NEXT: leaq .L15 $pb(%rip), %rax
963
+ ; LARGE-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L15 $pb, %rcx
903
964
; LARGE-PIC-NEXT: addq %rax, %rcx
904
965
; LARGE-PIC-NEXT: movabsq $__start_foo@GOTOFF, %rax
905
966
; LARGE-PIC-NEXT: addq %rcx, %rax
906
967
; LARGE-PIC-NEXT: retq
907
968
;
908
969
; LARGE-SMALL-DATA-PIC-LABEL: lea_start_foo:
909
970
; LARGE-SMALL-DATA-PIC: # %bb.0:
910
- ; LARGE-SMALL-DATA-PIC-NEXT: .L14 $pb:
911
- ; LARGE-SMALL-DATA-PIC-NEXT: leaq .L14 $pb(%rip), %rax
912
- ; LARGE-SMALL-DATA-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L14 $pb, %rcx
971
+ ; LARGE-SMALL-DATA-PIC-NEXT: .L15 $pb:
972
+ ; LARGE-SMALL-DATA-PIC-NEXT: leaq .L15 $pb(%rip), %rax
973
+ ; LARGE-SMALL-DATA-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L15 $pb, %rcx
913
974
; LARGE-SMALL-DATA-PIC-NEXT: addq %rax, %rcx
914
975
; LARGE-SMALL-DATA-PIC-NEXT: movabsq $__start_foo@GOTOFF, %rax
915
976
; LARGE-SMALL-DATA-PIC-NEXT: addq %rcx, %rax
@@ -954,19 +1015,19 @@ define dso_local ptr @lea_stop_foo() #0 {
954
1015
;
955
1016
; LARGE-PIC-LABEL: lea_stop_foo:
956
1017
; LARGE-PIC: # %bb.0:
957
- ; LARGE-PIC-NEXT: .L15 $pb:
958
- ; LARGE-PIC-NEXT: leaq .L15 $pb(%rip), %rax
959
- ; LARGE-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L15 $pb, %rcx
1018
+ ; LARGE-PIC-NEXT: .L16 $pb:
1019
+ ; LARGE-PIC-NEXT: leaq .L16 $pb(%rip), %rax
1020
+ ; LARGE-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L16 $pb, %rcx
960
1021
; LARGE-PIC-NEXT: addq %rax, %rcx
961
1022
; LARGE-PIC-NEXT: movabsq $__stop_foo@GOTOFF, %rax
962
1023
; LARGE-PIC-NEXT: addq %rcx, %rax
963
1024
; LARGE-PIC-NEXT: retq
964
1025
;
965
1026
; LARGE-SMALL-DATA-PIC-LABEL: lea_stop_foo:
966
1027
; LARGE-SMALL-DATA-PIC: # %bb.0:
967
- ; LARGE-SMALL-DATA-PIC-NEXT: .L15 $pb:
968
- ; LARGE-SMALL-DATA-PIC-NEXT: leaq .L15 $pb(%rip), %rax
969
- ; LARGE-SMALL-DATA-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L15 $pb, %rcx
1028
+ ; LARGE-SMALL-DATA-PIC-NEXT: .L16 $pb:
1029
+ ; LARGE-SMALL-DATA-PIC-NEXT: leaq .L16 $pb(%rip), %rax
1030
+ ; LARGE-SMALL-DATA-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L16 $pb, %rcx
970
1031
; LARGE-SMALL-DATA-PIC-NEXT: addq %rax, %rcx
971
1032
; LARGE-SMALL-DATA-PIC-NEXT: movabsq $__stop_foo@GOTOFF, %rax
972
1033
; LARGE-SMALL-DATA-PIC-NEXT: addq %rcx, %rax
@@ -1035,19 +1096,19 @@ define dso_local ptr @lea_static_fn() #0 {
1035
1096
;
1036
1097
; LARGE-PIC-LABEL: lea_static_fn:
1037
1098
; LARGE-PIC: # %bb.0:
1038
- ; LARGE-PIC-NEXT: .L19 $pb:
1039
- ; LARGE-PIC-NEXT: leaq .L19 $pb(%rip), %rax
1040
- ; LARGE-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L19 $pb, %rcx
1099
+ ; LARGE-PIC-NEXT: .L20 $pb:
1100
+ ; LARGE-PIC-NEXT: leaq .L20 $pb(%rip), %rax
1101
+ ; LARGE-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L20 $pb, %rcx
1041
1102
; LARGE-PIC-NEXT: addq %rax, %rcx
1042
1103
; LARGE-PIC-NEXT: movabsq $static_fn@GOTOFF, %rax
1043
1104
; LARGE-PIC-NEXT: addq %rcx, %rax
1044
1105
; LARGE-PIC-NEXT: retq
1045
1106
;
1046
1107
; LARGE-SMALL-DATA-PIC-LABEL: lea_static_fn:
1047
1108
; LARGE-SMALL-DATA-PIC: # %bb.0:
1048
- ; LARGE-SMALL-DATA-PIC-NEXT: .L19 $pb:
1049
- ; LARGE-SMALL-DATA-PIC-NEXT: leaq .L19 $pb(%rip), %rax
1050
- ; LARGE-SMALL-DATA-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L19 $pb, %rcx
1109
+ ; LARGE-SMALL-DATA-PIC-NEXT: .L20 $pb:
1110
+ ; LARGE-SMALL-DATA-PIC-NEXT: leaq .L20 $pb(%rip), %rax
1111
+ ; LARGE-SMALL-DATA-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L20 $pb, %rcx
1051
1112
; LARGE-SMALL-DATA-PIC-NEXT: addq %rax, %rcx
1052
1113
; LARGE-SMALL-DATA-PIC-NEXT: movabsq $static_fn@GOTOFF, %rax
1053
1114
; LARGE-SMALL-DATA-PIC-NEXT: addq %rcx, %rax
@@ -1088,19 +1149,19 @@ define dso_local ptr @lea_global_fn() #0 {
1088
1149
;
1089
1150
; LARGE-PIC-LABEL: lea_global_fn:
1090
1151
; LARGE-PIC: # %bb.0:
1091
- ; LARGE-PIC-NEXT: .L20 $pb:
1092
- ; LARGE-PIC-NEXT: leaq .L20 $pb(%rip), %rax
1093
- ; LARGE-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L20 $pb, %rcx
1152
+ ; LARGE-PIC-NEXT: .L21 $pb:
1153
+ ; LARGE-PIC-NEXT: leaq .L21 $pb(%rip), %rax
1154
+ ; LARGE-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L21 $pb, %rcx
1094
1155
; LARGE-PIC-NEXT: addq %rax, %rcx
1095
1156
; LARGE-PIC-NEXT: movabsq $global_fn@GOTOFF, %rax
1096
1157
; LARGE-PIC-NEXT: addq %rcx, %rax
1097
1158
; LARGE-PIC-NEXT: retq
1098
1159
;
1099
1160
; LARGE-SMALL-DATA-PIC-LABEL: lea_global_fn:
1100
1161
; LARGE-SMALL-DATA-PIC: # %bb.0:
1101
- ; LARGE-SMALL-DATA-PIC-NEXT: .L20 $pb:
1102
- ; LARGE-SMALL-DATA-PIC-NEXT: leaq .L20 $pb(%rip), %rax
1103
- ; LARGE-SMALL-DATA-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L20 $pb, %rcx
1162
+ ; LARGE-SMALL-DATA-PIC-NEXT: .L21 $pb:
1163
+ ; LARGE-SMALL-DATA-PIC-NEXT: leaq .L21 $pb(%rip), %rax
1164
+ ; LARGE-SMALL-DATA-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L21 $pb, %rcx
1104
1165
; LARGE-SMALL-DATA-PIC-NEXT: addq %rax, %rcx
1105
1166
; LARGE-SMALL-DATA-PIC-NEXT: movabsq $global_fn@GOTOFF, %rax
1106
1167
; LARGE-SMALL-DATA-PIC-NEXT: addq %rcx, %rax
@@ -1141,19 +1202,19 @@ define dso_local ptr @lea_extern_fn() #0 {
1141
1202
;
1142
1203
; LARGE-PIC-LABEL: lea_extern_fn:
1143
1204
; LARGE-PIC: # %bb.0:
1144
- ; LARGE-PIC-NEXT: .L21 $pb:
1145
- ; LARGE-PIC-NEXT: leaq .L21 $pb(%rip), %rax
1146
- ; LARGE-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L21 $pb, %rcx
1205
+ ; LARGE-PIC-NEXT: .L22 $pb:
1206
+ ; LARGE-PIC-NEXT: leaq .L22 $pb(%rip), %rax
1207
+ ; LARGE-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L22 $pb, %rcx
1147
1208
; LARGE-PIC-NEXT: addq %rax, %rcx
1148
1209
; LARGE-PIC-NEXT: movabsq $extern_fn@GOT, %rax
1149
1210
; LARGE-PIC-NEXT: movq (%rcx,%rax), %rax
1150
1211
; LARGE-PIC-NEXT: retq
1151
1212
;
1152
1213
; LARGE-SMALL-DATA-PIC-LABEL: lea_extern_fn:
1153
1214
; LARGE-SMALL-DATA-PIC: # %bb.0:
1154
- ; LARGE-SMALL-DATA-PIC-NEXT: .L21 $pb:
1155
- ; LARGE-SMALL-DATA-PIC-NEXT: leaq .L21 $pb(%rip), %rax
1156
- ; LARGE-SMALL-DATA-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L21 $pb, %rcx
1215
+ ; LARGE-SMALL-DATA-PIC-NEXT: .L22 $pb:
1216
+ ; LARGE-SMALL-DATA-PIC-NEXT: leaq .L22 $pb(%rip), %rax
1217
+ ; LARGE-SMALL-DATA-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L22 $pb, %rcx
1157
1218
; LARGE-SMALL-DATA-PIC-NEXT: addq %rax, %rcx
1158
1219
; LARGE-SMALL-DATA-PIC-NEXT: movabsq $extern_fn@GOT, %rax
1159
1220
; LARGE-SMALL-DATA-PIC-NEXT: movq (%rcx,%rax), %rax
@@ -1194,19 +1255,19 @@ define dso_local ptr @lea_ifunc() #0 {
1194
1255
;
1195
1256
; LARGE-PIC-LABEL: lea_ifunc:
1196
1257
; LARGE-PIC: # %bb.0:
1197
- ; LARGE-PIC-NEXT: .L22 $pb:
1198
- ; LARGE-PIC-NEXT: leaq .L22 $pb(%rip), %rax
1199
- ; LARGE-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L22 $pb, %rcx
1258
+ ; LARGE-PIC-NEXT: .L23 $pb:
1259
+ ; LARGE-PIC-NEXT: leaq .L23 $pb(%rip), %rax
1260
+ ; LARGE-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L23 $pb, %rcx
1200
1261
; LARGE-PIC-NEXT: addq %rax, %rcx
1201
1262
; LARGE-PIC-NEXT: movabsq $ifunc_func@GOT, %rax
1202
1263
; LARGE-PIC-NEXT: movq (%rcx,%rax), %rax
1203
1264
; LARGE-PIC-NEXT: retq
1204
1265
;
1205
1266
; LARGE-SMALL-DATA-PIC-LABEL: lea_ifunc:
1206
1267
; LARGE-SMALL-DATA-PIC: # %bb.0:
1207
- ; LARGE-SMALL-DATA-PIC-NEXT: .L22 $pb:
1208
- ; LARGE-SMALL-DATA-PIC-NEXT: leaq .L22 $pb(%rip), %rax
1209
- ; LARGE-SMALL-DATA-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L22 $pb, %rcx
1268
+ ; LARGE-SMALL-DATA-PIC-NEXT: .L23 $pb:
1269
+ ; LARGE-SMALL-DATA-PIC-NEXT: leaq .L23 $pb(%rip), %rax
1270
+ ; LARGE-SMALL-DATA-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L23 $pb, %rcx
1210
1271
; LARGE-SMALL-DATA-PIC-NEXT: addq %rax, %rcx
1211
1272
; LARGE-SMALL-DATA-PIC-NEXT: movabsq $ifunc_func@GOT, %rax
1212
1273
; LARGE-SMALL-DATA-PIC-NEXT: movq (%rcx,%rax), %rax
@@ -1247,19 +1308,19 @@ define dso_local ptr @lea_dso_local_ifunc() #0 {
1247
1308
;
1248
1309
; LARGE-PIC-LABEL: lea_dso_local_ifunc:
1249
1310
; LARGE-PIC: # %bb.0:
1250
- ; LARGE-PIC-NEXT: .L23 $pb:
1251
- ; LARGE-PIC-NEXT: leaq .L23 $pb(%rip), %rax
1252
- ; LARGE-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L23 $pb, %rcx
1311
+ ; LARGE-PIC-NEXT: .L24 $pb:
1312
+ ; LARGE-PIC-NEXT: leaq .L24 $pb(%rip), %rax
1313
+ ; LARGE-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L24 $pb, %rcx
1253
1314
; LARGE-PIC-NEXT: addq %rax, %rcx
1254
1315
; LARGE-PIC-NEXT: movabsq $dso_local_ifunc_func@GOTOFF, %rax
1255
1316
; LARGE-PIC-NEXT: addq %rcx, %rax
1256
1317
; LARGE-PIC-NEXT: retq
1257
1318
;
1258
1319
; LARGE-SMALL-DATA-PIC-LABEL: lea_dso_local_ifunc:
1259
1320
; LARGE-SMALL-DATA-PIC: # %bb.0:
1260
- ; LARGE-SMALL-DATA-PIC-NEXT: .L23 $pb:
1261
- ; LARGE-SMALL-DATA-PIC-NEXT: leaq .L23 $pb(%rip), %rax
1262
- ; LARGE-SMALL-DATA-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L23 $pb, %rcx
1321
+ ; LARGE-SMALL-DATA-PIC-NEXT: .L24 $pb:
1322
+ ; LARGE-SMALL-DATA-PIC-NEXT: leaq .L24 $pb(%rip), %rax
1323
+ ; LARGE-SMALL-DATA-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L24 $pb, %rcx
1263
1324
; LARGE-SMALL-DATA-PIC-NEXT: addq %rax, %rcx
1264
1325
; LARGE-SMALL-DATA-PIC-NEXT: movabsq $dso_local_ifunc_func@GOTOFF, %rax
1265
1326
; LARGE-SMALL-DATA-PIC-NEXT: addq %rcx, %rax
@@ -1334,19 +1395,19 @@ define dso_local float @load_constant_pool(float %x) #0 {
1334
1395
;
1335
1396
; LARGE-PIC-LABEL: load_constant_pool:
1336
1397
; LARGE-PIC: # %bb.0:
1337
- ; LARGE-PIC-NEXT: .L25 $pb:
1338
- ; LARGE-PIC-NEXT: leaq .L25 $pb(%rip), %rax
1339
- ; LARGE-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L25 $pb, %rcx
1398
+ ; LARGE-PIC-NEXT: .L26 $pb:
1399
+ ; LARGE-PIC-NEXT: leaq .L26 $pb(%rip), %rax
1400
+ ; LARGE-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L26 $pb, %rcx
1340
1401
; LARGE-PIC-NEXT: addq %rax, %rcx
1341
1402
; LARGE-PIC-NEXT: movabsq ${{\.?LCPI[0-9]+_[0-9]+}}@GOTOFF, %rax
1342
1403
; LARGE-PIC-NEXT: addss (%rcx,%rax), %xmm0
1343
1404
; LARGE-PIC-NEXT: retq
1344
1405
;
1345
1406
; LARGE-SMALL-DATA-PIC-LABEL: load_constant_pool:
1346
1407
; LARGE-SMALL-DATA-PIC: # %bb.0:
1347
- ; LARGE-SMALL-DATA-PIC-NEXT: .L25 $pb:
1348
- ; LARGE-SMALL-DATA-PIC-NEXT: leaq .L25 $pb(%rip), %rax
1349
- ; LARGE-SMALL-DATA-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L25 $pb, %rcx
1408
+ ; LARGE-SMALL-DATA-PIC-NEXT: .L26 $pb:
1409
+ ; LARGE-SMALL-DATA-PIC-NEXT: leaq .L26 $pb(%rip), %rax
1410
+ ; LARGE-SMALL-DATA-PIC-NEXT: movabsq $_GLOBAL_OFFSET_TABLE_-.L26 $pb, %rcx
1350
1411
; LARGE-SMALL-DATA-PIC-NEXT: addq %rax, %rcx
1351
1412
; LARGE-SMALL-DATA-PIC-NEXT: movabsq ${{\.?LCPI[0-9]+_[0-9]+}}@GOTOFF, %rax
1352
1413
; LARGE-SMALL-DATA-PIC-NEXT: addss (%rcx,%rax), %xmm0
0 commit comments