brintos

brintos / llvm-project-archived public Read only

0
0
Text · 20.1 KiB · 6735b38 Raw
696 lines · plain
1## Check that llvm-bolt is able to parse DWARF expressions in CFI instructions,2## store them in memory and correctly write them back to the output binary.3 4# RUN: llvm-mc -filetype=obj -triple x86_64-unknown-unknown %s -o %t.o5# RUN: %clang %cflags %t.o -o %t.exe6# RUN: llvm-bolt %t.exe -o %t && llvm-dwarfdump --eh-frame %t | FileCheck %s7#8# CHECK:       DW_CFA_advance_loc: 59# CHECK-NEXT:  DW_CFA_def_cfa: R10 +010# CHECK-NEXT:  DW_CFA_advance_loc: 911# CHECK-NEXT:  DW_CFA_expression: RBP DW_OP_breg6 RBP+012# CHECK-NEXT:  DW_CFA_advance_loc: 513# CHECK-NEXT:  DW_CFA_def_cfa_expression: DW_OP_breg6 RBP-8, DW_OP_deref14# CHECK-NEXT:  DW_CFA_advance_loc2: 313015# CHECK-NEXT:  DW_CFA_def_cfa: R10 +016# CHECK-NEXT:  DW_CFA_advance_loc: 517# CHECK-NEXT:  DW_CFA_def_cfa: RSP +818 19	.text20  .globl main21  .type main, %function22main:23# FDATA: 0 [unknown] 0 1 main 0 0 024	.cfi_startproc25.LBB06:26	pushq	%rbp27	.cfi_def_cfa_offset 1628	.cfi_offset %rbp, -1629	movq	%rsp, %rbp30	.cfi_def_cfa_register %rbp31	callq	blake2b_compress_avx232	movl	$0x0, %eax33	popq	%rbp34	.cfi_def_cfa %rsp, 835	retq36 37	.cfi_endproc38.size main, .-main39 40  .globl blake2b_compress_avx241  .type blake2b_compress_avx2, %function42blake2b_compress_avx2:43# FDATA: 0 [unknown] 0 1 blake2b_compress_avx2 0 0 044	.cfi_startproc45.LBB07:46	leaq	0x8(%rsp), %r1047	.cfi_def_cfa %r10, 048	andq	$-0x20, %rsp49	pushq	-0x8(%r10)50	pushq	%rbp51	.cfi_escape 0x10, 0x06, 0x02, 0x76, 0x00 #52	movq	%rsp, %rbp53	pushq	%r1054	.cfi_escape 0x0f, 0x03, 0x76, 0x78, 0x06 #55	subq	$0x170, %rsp56	vbroadcasti128	(%rsi), %ymm1057	vbroadcasti128	0x10(%rsi), %ymm858	vbroadcasti128	0x30(%rsi), %ymm759	vbroadcasti128	0x70(%rsi), %ymm460	vpunpcklqdq	%ymm8, %ymm10, %ymm061	vbroadcasti128	0x20(%rsi), %ymm1162	vmovdqa	%ymm7, -0x30(%rbp)63	vpunpcklqdq	-0x30(%rbp), %ymm11, %ymm164	vmovdqa	%ymm4, %ymm1565	vpblendd	$0xf0, %ymm1, %ymm0, %ymm466	vpaddq	(%rdi), %ymm4, %ymm1367	vpaddq	0x20(%rdi), %ymm13, %ymm1368	vmovdqa	%ymm4, -0x190(%rbp)69	vbroadcasti128	0x60(%rsi), %ymm770	vbroadcasti128	0x50(%rsi), %ymm671	vbroadcasti128	0x40(%rsi), %ymm972	vpunpcklqdq	%ymm15, %ymm7, %ymm1473	vmovq	0x50(%rdi), %xmm574	vpinsrq	$0x1, 0x58(%rdi), %xmm5, %xmm175	vmovq	0x40(%rdi), %xmm576	vpinsrq	$0x1, 0x48(%rdi), %xmm5, %xmm077	vinserti128	$0x1, %xmm1, %ymm0, %ymm178	vpunpckhqdq	%ymm8, %ymm10, %ymm079	vpxor	"blake2b_IV/1"+32(%rip), %ymm1, %ymm180	vpunpckhqdq	-0x30(%rbp), %ymm11, %ymm481	vpblendd	$0xf0, %ymm4, %ymm0, %ymm082	vmovdqa	DATAat0x401380(%rip), %ymm583	vmovdqa	%ymm0, -0xb0(%rbp)84	vpxor	%ymm13, %ymm1, %ymm185	vpaddq	-0xb0(%rbp), %ymm13, %ymm1386	vpshufd	$0xb1, %ymm1, %ymm187	vmovdqa	DATAat0x4013a0(%rip), %ymm488	vpaddq	"blake2b_IV/1"(%rip), %ymm1, %ymm389	vpxor	0x20(%rdi), %ymm3, %ymm290	vpshufb	%ymm5, %ymm2, %ymm291	vpaddq	%ymm2, %ymm13, %ymm1392	vpxor	%ymm1, %ymm13, %ymm193	vpshufb	%ymm4, %ymm1, %ymm194	vpaddq	%ymm1, %ymm3, %ymm395	vpermq	$0x93, %ymm1, %ymm196	vpxor	%ymm2, %ymm3, %ymm297	vpsrlq	$0x3f, %ymm2, %ymm1298	vpaddq	%ymm2, %ymm2, %ymm299	vpermq	$0x4e, %ymm3, %ymm3100	vpor	%ymm12, %ymm2, %ymm2101	vpermq	$0x39, %ymm2, %ymm0102	vpunpcklqdq	%ymm6, %ymm9, %ymm2103	vpunpckhqdq	%ymm15, %ymm7, %ymm12104	vpblendd	$0xf0, %ymm14, %ymm2, %ymm2105	vmovdqa	%ymm2, -0xd0(%rbp)106	vpaddq	-0xd0(%rbp), %ymm13, %ymm13107	vpunpckhqdq	%ymm6, %ymm9, %ymm2108	vpblendd	$0xf0, %ymm12, %ymm2, %ymm2109	vmovdqa	%ymm2, -0xf0(%rbp)110	vmovdqa	%ymm15, %ymm12111	vpaddq	%ymm0, %ymm13, %ymm13112	vmovdqa	%ymm12, -0x50(%rbp)113	vpxor	%ymm13, %ymm1, %ymm1114	vpaddq	-0xf0(%rbp), %ymm13, %ymm13115	vpshufd	$0xb1, %ymm1, %ymm1116	vpaddq	%ymm1, %ymm3, %ymm3117	vpxor	%ymm0, %ymm3, %ymm0118	vpshufb	%ymm5, %ymm0, %ymm0119	vpaddq	%ymm0, %ymm13, %ymm13120	vpxor	%ymm1, %ymm13, %ymm1121	vpshufb	%ymm4, %ymm1, %ymm1122	vpaddq	%ymm1, %ymm3, %ymm3123	vpermq	$0x39, %ymm1, %ymm1124	vpxor	%ymm0, %ymm3, %ymm0125	vpsrlq	$0x3f, %ymm0, %ymm2126	vpaddq	%ymm0, %ymm0, %ymm0127	vpermq	$0x4e, %ymm3, %ymm3128	vpor	%ymm2, %ymm0, %ymm0129	vpunpcklqdq	%ymm11, %ymm15, %ymm2130	vmovdqa	%ymm2, %ymm15131	vpunpckhqdq	%ymm7, %ymm9, %ymm2132	vpblendd	$0xf0, %ymm2, %ymm15, %ymm2133	vmovdqa	%ymm15, -0x1b0(%rbp)134	vpermq	$0x93, %ymm0, %ymm0135	vmovdqa	%ymm2, -0x110(%rbp)136	vpunpcklqdq	%ymm9, %ymm6, %ymm2137	vpaddq	-0x110(%rbp), %ymm13, %ymm13138	vmovdqa	%ymm2, %ymm15139	vmovdqa	-0x30(%rbp), %ymm2140	vpalignr	$0x8, -0x50(%rbp), %ymm2, %ymm2141	vmovdqa	%ymm15, -0x1d0(%rbp)142	vpaddq	%ymm0, %ymm13, %ymm13143	vpblendd	$0xf0, %ymm2, %ymm15, %ymm12144	vpxor	%ymm13, %ymm1, %ymm1145	vpshufd	$0xb1, %ymm1, %ymm1146	vpaddq	%ymm1, %ymm3, %ymm3147	vmovdqa	%ymm12, -0x130(%rbp)148	vpxor	%ymm0, %ymm3, %ymm0149	vpshufb	%ymm5, %ymm0, %ymm0150	vpaddq	-0x130(%rbp), %ymm13, %ymm13151	vmovdqa	-0x30(%rbp), %ymm15152	vpunpckhqdq	%ymm11, %ymm6, %ymm12153	vpaddq	%ymm0, %ymm13, %ymm13154	vpxor	%ymm1, %ymm13, %ymm1155	vpshufb	%ymm4, %ymm1, %ymm1156	vpaddq	%ymm1, %ymm3, %ymm3157	vpermq	$0x93, %ymm1, %ymm1158	vpxor	%ymm0, %ymm3, %ymm0159	vpsrlq	$0x3f, %ymm0, %ymm2160	vpaddq	%ymm0, %ymm0, %ymm0161	vpermq	$0x4e, %ymm3, %ymm3162	vpor	%ymm2, %ymm0, %ymm0163	vpshufd	$0x4e, %ymm10, %ymm2164	vpblendd	$0xf0, %ymm12, %ymm2, %ymm12165	vpermq	$0x39, %ymm0, %ymm0166	vmovdqa	%ymm12, -0x150(%rbp)167	vpunpckhqdq	%ymm8, %ymm15, %ymm12168	vpunpcklqdq	%ymm8, %ymm7, %ymm2169	vpaddq	-0x150(%rbp), %ymm13, %ymm13170	vmovdqa	%ymm12, -0x70(%rbp)171	vmovdqa	-0x50(%rbp), %ymm15172	vpblendd	$0xf0, -0x70(%rbp), %ymm2, %ymm2173	vpaddq	%ymm0, %ymm13, %ymm13174	vmovdqa	%ymm2, -0x170(%rbp)175	vpxor	%ymm13, %ymm1, %ymm1176	vpunpckhqdq	%ymm15, %ymm11, %ymm12177	vpaddq	-0x170(%rbp), %ymm13, %ymm13178	vpshufd	$0xb1, %ymm1, %ymm1179	vpaddq	%ymm1, %ymm3, %ymm3180	vmovdqa	%ymm12, -0x90(%rbp)181	vpunpcklqdq	%ymm10, %ymm9, %ymm12182	vpxor	%ymm0, %ymm3, %ymm0183	vpshufb	%ymm5, %ymm0, %ymm0184	vpaddq	%ymm0, %ymm13, %ymm13185	vpxor	%ymm1, %ymm13, %ymm1186	vpshufb	%ymm4, %ymm1, %ymm1187	vpaddq	%ymm1, %ymm3, %ymm3188	vpermq	$0x39, %ymm1, %ymm1189	vpxor	%ymm0, %ymm3, %ymm0190	vpsrlq	$0x3f, %ymm0, %ymm2191	vpaddq	%ymm0, %ymm0, %ymm0192	vpermq	$0x4e, %ymm3, %ymm3193	vpor	%ymm2, %ymm0, %ymm0194	vpalignr	$0x8, %ymm6, %ymm7, %ymm2195	vpermq	$0x93, %ymm0, %ymm0196	vpblendd	$0xf0, -0x90(%rbp), %ymm2, %ymm2197	vpaddq	%ymm2, %ymm13, %ymm2198	vpblendd	$0x33, %ymm8, %ymm7, %ymm13199	vpaddq	%ymm0, %ymm2, %ymm2200	vpblendd	$0xf0, %ymm13, %ymm12, %ymm12201	vmovdqa	-0x30(%rbp), %ymm13202	vpxor	%ymm2, %ymm1, %ymm1203	vpaddq	%ymm12, %ymm2, %ymm12204	vpshufd	$0xb1, %ymm1, %ymm1205	vpaddq	%ymm1, %ymm3, %ymm3206	vpxor	%ymm0, %ymm3, %ymm0207	vpshufb	%ymm5, %ymm0, %ymm0208	vpaddq	%ymm0, %ymm12, %ymm12209	vpunpckhqdq	%ymm9, %ymm13, %ymm13210	vpxor	%ymm1, %ymm12, %ymm1211	vpshufb	%ymm4, %ymm1, %ymm1212	vpaddq	%ymm1, %ymm3, %ymm3213	vpermq	$0x93, %ymm1, %ymm1214	vpxor	%ymm0, %ymm3, %ymm0215	vpsrlq	$0x3f, %ymm0, %ymm2216	vpaddq	%ymm0, %ymm0, %ymm0217	vpermq	$0x4e, %ymm3, %ymm3218	vpor	%ymm2, %ymm0, %ymm0219	vpblendd	$0x33, %ymm6, %ymm8, %ymm2220	vpermq	$0x39, %ymm0, %ymm0221	vpblendd	$0xf0, %ymm13, %ymm2, %ymm13222	vpunpcklqdq	-0x30(%rbp), %ymm15, %ymm2223	vmovdqa	-0x70(%rbp), %ymm15224	vpaddq	%ymm13, %ymm12, %ymm13225	vpalignr	$0x8, %ymm10, %ymm11, %ymm12226	vpaddq	%ymm0, %ymm13, %ymm13227	vpblendd	$0xf0, %ymm12, %ymm2, %ymm2228	vpxor	%ymm13, %ymm1, %ymm1229	vpaddq	%ymm2, %ymm13, %ymm2230	vpshufd	$0xb1, %ymm1, %ymm1231	vpaddq	%ymm1, %ymm3, %ymm3232	vpxor	%ymm0, %ymm3, %ymm0233	vpshufb	%ymm5, %ymm0, %ymm0234	vpaddq	%ymm0, %ymm2, %ymm2235	vpunpckhqdq	%ymm10, %ymm9, %ymm13236	vpxor	%ymm1, %ymm2, %ymm1237	vpshufb	%ymm4, %ymm1, %ymm1238	vpaddq	%ymm1, %ymm3, %ymm3239	vpblendd	$0xf0, %ymm14, %ymm13, %ymm13240	vpxor	%ymm0, %ymm3, %ymm0241	vpsrlq	$0x3f, %ymm0, %ymm12242	vpaddq	%ymm0, %ymm0, %ymm0243	vpermq	$0x39, %ymm1, %ymm1244	vpor	%ymm12, %ymm0, %ymm0245	vpunpckhqdq	%ymm6, %ymm7, %ymm12246	vpermq	$0x93, %ymm0, %ymm0247	vpermq	$0x4e, %ymm3, %ymm3248	vpblendd	$0xf0, %ymm12, %ymm15, %ymm12249	vmovdqa	-0x50(%rbp), %ymm15250	vpaddq	%ymm12, %ymm2, %ymm12251	vpaddq	%ymm0, %ymm12, %ymm12252	vpblendd	$0x33, %ymm11, %ymm15, %ymm14253	vpunpcklqdq	%ymm6, %ymm8, %ymm15254	vpxor	%ymm12, %ymm1, %ymm1255	vpaddq	%ymm13, %ymm12, %ymm13256	vpshufd	$0xb1, %ymm1, %ymm1257	vpaddq	%ymm1, %ymm3, %ymm3258	vpxor	%ymm0, %ymm3, %ymm0259	vpshufb	%ymm5, %ymm0, %ymm0260	vpaddq	%ymm0, %ymm13, %ymm13261	vpxor	%ymm1, %ymm13, %ymm1262	vpshufb	%ymm4, %ymm1, %ymm1263	vpaddq	%ymm1, %ymm3, %ymm3264	vpermq	$0x93, %ymm1, %ymm1265	vpxor	%ymm0, %ymm3, %ymm0266	vpsrlq	$0x3f, %ymm0, %ymm2267	vpaddq	%ymm0, %ymm0, %ymm0268	vpermq	$0x4e, %ymm3, %ymm3269	vpor	%ymm2, %ymm0, %ymm0270	vpblendd	$0x33, %ymm8, %ymm11, %ymm2271	vpermq	$0x39, %ymm0, %ymm12272	vmovdqa	-0x30(%rbp), %ymm0273	vpblendd	$0xf0, %ymm14, %ymm2, %ymm2274	vpaddq	%ymm2, %ymm13, %ymm2275	vpunpcklqdq	%ymm6, %ymm0, %ymm13276	vmovdqa	%ymm13, %ymm0277	vpunpcklqdq	%ymm9, %ymm10, %ymm13278	vmovdqa	%ymm0, -0x1f0(%rbp)279	vpaddq	%ymm12, %ymm2, %ymm2280	vpblendd	$0xf0, %ymm13, %ymm0, %ymm0281	vpxor	%ymm2, %ymm1, %ymm1282	vpaddq	%ymm0, %ymm2, %ymm2283	vpshufd	$0xb1, %ymm1, %ymm1284	vpaddq	%ymm1, %ymm3, %ymm3285	vpxor	%ymm12, %ymm3, %ymm12286	vpshufb	%ymm5, %ymm12, %ymm12287	vpaddq	%ymm12, %ymm2, %ymm2288	vpxor	%ymm1, %ymm2, %ymm1289	vpshufb	%ymm4, %ymm1, %ymm1290	vpaddq	%ymm1, %ymm3, %ymm3291	vpermq	$0x39, %ymm1, %ymm1292	vpxor	%ymm12, %ymm3, %ymm12293	vpsrlq	$0x3f, %ymm12, %ymm0294	vpaddq	%ymm12, %ymm12, %ymm12295	vpermq	$0x4e, %ymm3, %ymm3296	vpor	%ymm0, %ymm12, %ymm12297	vpermq	$0x93, %ymm12, %ymm0298	vpunpckhqdq	%ymm11, %ymm9, %ymm12299	vpblendd	$0xf0, %ymm15, %ymm12, %ymm12300	vmovdqa	-0x30(%rbp), %ymm15301	vpaddq	%ymm12, %ymm2, %ymm2302	vpaddq	%ymm0, %ymm2, %ymm2303	vpblendd	$0x33, %ymm10, %ymm15, %ymm12304	vpxor	%ymm2, %ymm1, %ymm1305	vpshufd	$0xb1, %ymm1, %ymm1306	vpaddq	%ymm1, %ymm3, %ymm3307	vpblendd	$0xf0, %ymm14, %ymm12, %ymm14308	vpxor	%ymm0, %ymm3, %ymm0309	vpshufb	%ymm5, %ymm0, %ymm0310	vmovdqa	-0x50(%rbp), %ymm15311	vpaddq	%ymm14, %ymm2, %ymm2312	vpblendd	$0x33, -0x30(%rbp), %ymm8, %ymm14313	vpaddq	%ymm0, %ymm2, %ymm2314	vpxor	%ymm1, %ymm2, %ymm1315	vpshufb	%ymm4, %ymm1, %ymm1316	vpaddq	%ymm1, %ymm3, %ymm3317	vpermq	$0x93, %ymm1, %ymm1318	vpxor	%ymm0, %ymm3, %ymm0319	vpsrlq	$0x3f, %ymm0, %ymm12320	vpaddq	%ymm0, %ymm0, %ymm0321	vpermq	$0x4e, %ymm3, %ymm3322	vpor	%ymm12, %ymm0, %ymm0323	vpblendd	$0x33, %ymm15, %ymm6, %ymm12324	vpermq	$0x39, %ymm0, %ymm0325	vpblendd	$0xf0, %ymm14, %ymm12, %ymm12326	vpblendd	$0x33, %ymm9, %ymm7, %ymm14327	vpaddq	%ymm12, %ymm2, %ymm2328	vpalignr	$0x8, %ymm10, %ymm7, %ymm12329	vpaddq	%ymm0, %ymm2, %ymm2330	vpblendd	$0xf0, %ymm14, %ymm12, %ymm12331	vmovdqa	-0x30(%rbp), %ymm14332	vpxor	%ymm2, %ymm1, %ymm1333	vpaddq	%ymm12, %ymm2, %ymm2334	vpshufd	$0xb1, %ymm1, %ymm1335	vpaddq	%ymm1, %ymm3, %ymm3336	vpxor	%ymm0, %ymm3, %ymm0337	vpshufb	%ymm5, %ymm0, %ymm0338	vpaddq	%ymm0, %ymm2, %ymm2339	vpxor	%ymm1, %ymm2, %ymm1340	vpshufb	%ymm4, %ymm1, %ymm1341	vpaddq	%ymm1, %ymm3, %ymm3342	vpermq	$0x39, %ymm1, %ymm1343	vpxor	%ymm0, %ymm3, %ymm0344	vpsrlq	$0x3f, %ymm0, %ymm12345	vpaddq	%ymm0, %ymm0, %ymm0346	vpermq	$0x4e, %ymm3, %ymm3347	vpor	%ymm12, %ymm0, %ymm0348	vpunpcklqdq	-0x30(%rbp), %ymm8, %ymm12349	vpblendd	$0xf0, %ymm13, %ymm12, %ymm13350	vpermq	$0x93, %ymm0, %ymm0351	vpaddq	%ymm13, %ymm2, %ymm2352	vpunpcklqdq	%ymm6, %ymm7, %ymm12353	vpunpckhqdq	%ymm8, %ymm6, %ymm13354	vpblendd	$0xf0, %ymm13, %ymm12, %ymm12355	vpaddq	%ymm0, %ymm2, %ymm2356	vpunpckhqdq	%ymm10, %ymm15, %ymm13357	vpxor	%ymm2, %ymm1, %ymm1358	vpaddq	%ymm12, %ymm2, %ymm2359	vpshufd	$0xb1, %ymm1, %ymm1360	vpaddq	%ymm1, %ymm3, %ymm3361	vpxor	%ymm0, %ymm3, %ymm0362	vpshufb	%ymm5, %ymm0, %ymm0363	vpaddq	%ymm0, %ymm2, %ymm2364	vpxor	%ymm1, %ymm2, %ymm1365	vpshufb	%ymm4, %ymm1, %ymm1366	vpaddq	%ymm1, %ymm3, %ymm3367	vpermq	$0x93, %ymm1, %ymm1368	vpxor	%ymm0, %ymm3, %ymm0369	vpsrlq	$0x3f, %ymm0, %ymm12370	vpaddq	%ymm0, %ymm0, %ymm0371	vpermq	$0x4e, %ymm3, %ymm3372	vpor	%ymm12, %ymm0, %ymm0373	vpblendd	$0x33, %ymm11, %ymm14, %ymm12374	vmovdqa	%ymm15, %ymm14375	vpermq	$0x39, %ymm0, %ymm0376	vpblendd	$0xf0, %ymm13, %ymm12, %ymm12377	vpblendd	$0x33, %ymm14, %ymm9, %ymm13378	vmovdqa	-0x90(%rbp), %ymm15379	vpaddq	%ymm12, %ymm2, %ymm2380	vpunpckhqdq	%ymm11, %ymm7, %ymm12381	vpblendd	$0xf0, %ymm13, %ymm12, %ymm12382	vpshufd	$0x4e, %ymm9, %ymm13383	vpaddq	%ymm0, %ymm2, %ymm2384	vpxor	%ymm2, %ymm1, %ymm1385	vpaddq	%ymm12, %ymm2, %ymm2386	vpshufd	$0xb1, %ymm1, %ymm1387	vpaddq	%ymm1, %ymm3, %ymm3388	vpxor	%ymm0, %ymm3, %ymm0389	vpshufb	%ymm5, %ymm0, %ymm0390	vpaddq	%ymm0, %ymm2, %ymm2391	vpxor	%ymm1, %ymm2, %ymm1392	vpshufb	%ymm4, %ymm1, %ymm1393	vpaddq	%ymm1, %ymm3, %ymm3394	vpermq	$0x39, %ymm1, %ymm1395	vpxor	%ymm0, %ymm3, %ymm0396	vpsrlq	$0x3f, %ymm0, %ymm12397	vpaddq	%ymm0, %ymm0, %ymm0398	vpermq	$0x4e, %ymm3, %ymm3399	vpor	%ymm12, %ymm0, %ymm0400	vpblendd	$0x33, %ymm7, %ymm10, %ymm12401	vpermq	$0x93, %ymm0, %ymm0402	vpblendd	$0xf0, -0x1b0(%rbp), %ymm12, %ymm12403	vpaddq	%ymm12, %ymm2, %ymm2404	vpalignr	$0x8, %ymm7, %ymm6, %ymm12405	vpaddq	%ymm0, %ymm2, %ymm2406	vpblendd	$0xf0, %ymm12, %ymm15, %ymm12407	vmovdqa	-0x70(%rbp), %ymm15408	vpxor	%ymm2, %ymm1, %ymm1409	vpaddq	%ymm12, %ymm2, %ymm2410	vpshufd	$0xb1, %ymm1, %ymm1411	vpaddq	%ymm1, %ymm3, %ymm3412	vpxor	%ymm0, %ymm3, %ymm0413	vpshufb	%ymm5, %ymm0, %ymm0414	vpaddq	%ymm0, %ymm2, %ymm2415	vpxor	%ymm1, %ymm2, %ymm1416	vpshufb	%ymm4, %ymm1, %ymm1417	vpaddq	%ymm1, %ymm3, %ymm3418	vpermq	$0x93, %ymm1, %ymm1419	vpxor	%ymm0, %ymm3, %ymm0420	vpsrlq	$0x3f, %ymm0, %ymm12421	vpaddq	%ymm0, %ymm0, %ymm0422	vpermq	$0x4e, %ymm3, %ymm3423	vpor	%ymm12, %ymm0, %ymm0424	vpunpcklqdq	-0x30(%rbp), %ymm10, %ymm12425	vpblendd	$0xf0, %ymm13, %ymm12, %ymm12426	vpermq	$0x39, %ymm0, %ymm0427	vpaddq	%ymm12, %ymm2, %ymm2428	vpblendd	$0x33, %ymm8, %ymm6, %ymm12429	vpblendd	$0x33, %ymm7, %ymm8, %ymm13430	vpaddq	%ymm0, %ymm2, %ymm2431	vpblendd	$0xf0, %ymm12, %ymm15, %ymm12432	vmovdqa	-0x90(%rbp), %ymm15433	vpxor	%ymm2, %ymm1, %ymm1434	vpaddq	%ymm12, %ymm2, %ymm2435	vpshufd	$0xb1, %ymm1, %ymm1436	vpaddq	%ymm1, %ymm3, %ymm3437	vpxor	%ymm0, %ymm3, %ymm0438	vpshufb	%ymm5, %ymm0, %ymm0439	vpaddq	%ymm0, %ymm2, %ymm2440	vpxor	%ymm1, %ymm2, %ymm1441	vpshufb	%ymm4, %ymm1, %ymm1442	vpaddq	%ymm1, %ymm3, %ymm3443	vpermq	$0x39, %ymm1, %ymm1444	vpxor	%ymm0, %ymm3, %ymm0445	vpsrlq	$0x3f, %ymm0, %ymm12446	vpaddq	%ymm0, %ymm0, %ymm0447	vpermq	$0x4e, %ymm3, %ymm3448	vpor	%ymm12, %ymm0, %ymm0449	vpunpckhqdq	-0x30(%rbp), %ymm7, %ymm12450	vpblendd	$0xf0, %ymm13, %ymm12, %ymm12451	vmovdqa	%ymm14, %ymm13452	vpaddq	%ymm12, %ymm2, %ymm2453	vpalignr	$0x8, %ymm6, %ymm14, %ymm14454	vpunpckhqdq	%ymm9, %ymm10, %ymm12455	vpermq	$0x93, %ymm0, %ymm0456	vpblendd	$0xf0, %ymm12, %ymm14, %ymm12457	vpaddq	%ymm0, %ymm2, %ymm2458	vpxor	%ymm2, %ymm1, %ymm1459	vpaddq	%ymm12, %ymm2, %ymm2460	vpshufd	$0xb1, %ymm1, %ymm1461	vpaddq	%ymm1, %ymm3, %ymm3462	vpxor	%ymm0, %ymm3, %ymm0463	vpshufb	%ymm5, %ymm0, %ymm0464	vpaddq	%ymm0, %ymm2, %ymm2465	vpxor	%ymm1, %ymm2, %ymm1466	vpshufb	%ymm4, %ymm1, %ymm1467	vpaddq	%ymm1, %ymm3, %ymm3468	vpermq	$0x93, %ymm1, %ymm1469	vpxor	%ymm0, %ymm3, %ymm0470	vpsrlq	$0x3f, %ymm0, %ymm12471	vpaddq	%ymm0, %ymm0, %ymm0472	vpermq	$0x4e, %ymm3, %ymm3473	vpor	%ymm12, %ymm0, %ymm0474	vpunpcklqdq	%ymm8, %ymm9, %ymm12475	vpblendd	$0xf0, %ymm12, %ymm15, %ymm12476	vpermq	$0x39, %ymm0, %ymm0477	vpaddq	%ymm12, %ymm2, %ymm2478	vpunpcklqdq	%ymm11, %ymm10, %ymm12479	vmovdqa	%ymm13, %ymm15480	vpblendd	$0xf0, -0x1f0(%rbp), %ymm12, %ymm12481	vpaddq	%ymm0, %ymm2, %ymm2482	vpxor	%ymm2, %ymm1, %ymm1483	vpaddq	%ymm12, %ymm2, %ymm2484	vpshufd	$0xb1, %ymm1, %ymm1485	vpaddq	%ymm1, %ymm3, %ymm3486	vpxor	%ymm0, %ymm3, %ymm0487	vpshufb	%ymm5, %ymm0, %ymm0488	vpaddq	%ymm0, %ymm2, %ymm2489	vpxor	%ymm1, %ymm2, %ymm1490	vpshufb	%ymm4, %ymm1, %ymm1491	vpaddq	%ymm1, %ymm3, %ymm3492	vpermq	$0x39, %ymm1, %ymm1493	vpxor	%ymm0, %ymm3, %ymm0494	vpsrlq	$0x3f, %ymm0, %ymm12495	vpaddq	%ymm0, %ymm0, %ymm0496	vpermq	$0x4e, %ymm3, %ymm3497	vpor	%ymm12, %ymm0, %ymm0498	vmovdqa	-0x30(%rbp), %ymm12499	vpermq	$0x93, %ymm0, %ymm0500	vpunpcklqdq	%ymm13, %ymm12, %ymm12501	vpalignr	$0x8, %ymm6, %ymm10, %ymm13502	vpblendd	$0xf0, %ymm13, %ymm12, %ymm12503	vpunpckhqdq	%ymm9, %ymm15, %ymm13504	vpalignr	$0x8, %ymm8, %ymm9, %ymm9505	vpaddq	%ymm12, %ymm2, %ymm12506	vpalignr	$0x8, %ymm10, %ymm6, %ymm6507	vpblendd	$0xf0, %ymm9, %ymm13, %ymm9508	vpaddq	%ymm0, %ymm12, %ymm12509	vpblendd	$0xf0, %ymm6, %ymm7, %ymm6510	vpxor	%ymm12, %ymm1, %ymm1511	vpaddq	%ymm9, %ymm12, %ymm12512	vpshufd	$0xb1, %ymm1, %ymm1513	vpaddq	%ymm1, %ymm3, %ymm3514	vpxor	%ymm3, %ymm0, %ymm0515	vpshufb	%ymm5, %ymm0, %ymm0516	vpaddq	%ymm0, %ymm12, %ymm12517	vpxor	%ymm1, %ymm12, %ymm1518	vpaddq	%ymm6, %ymm12, %ymm12519	vpshufb	%ymm4, %ymm1, %ymm1520	vmovdqa	-0x30(%rbp), %ymm6521	vpaddq	%ymm1, %ymm3, %ymm3522	vpermq	$0x93, %ymm1, %ymm1523	vpxor	%ymm0, %ymm3, %ymm0524	vpsrlq	$0x3f, %ymm0, %ymm2525	vpaddq	%ymm0, %ymm0, %ymm0526	vpermq	$0x4e, %ymm3, %ymm3527	vpor	%ymm2, %ymm0, %ymm0528	vpblendd	$0x33, %ymm8, %ymm6, %ymm2529	vpermq	$0x39, %ymm0, %ymm0530	vpaddq	%ymm0, %ymm12, %ymm12531	vpblendd	$0xf0, %ymm11, %ymm2, %ymm2532	vpxor	%ymm12, %ymm1, %ymm1533	vpshufd	$0xb1, %ymm1, %ymm1534	vpaddq	%ymm1, %ymm3, %ymm3535	vpaddq	%ymm2, %ymm12, %ymm12536	vpxor	%ymm3, %ymm0, %ymm0537	vpshufb	%ymm5, %ymm0, %ymm0538	vmovdqa	-0x30(%rbp), %ymm6539	vpaddq	%ymm0, %ymm12, %ymm12540	vpxor	%ymm1, %ymm12, %ymm1541	vpshufb	%ymm4, %ymm1, %ymm1542	vpaddq	%ymm1, %ymm3, %ymm3543	vpermq	$0x39, %ymm1, %ymm1544	vpxor	%ymm0, %ymm3, %ymm0545	vpsrlq	$0x3f, %ymm0, %ymm2546	vpaddq	%ymm0, %ymm0, %ymm0547	vpermq	$0x4e, %ymm3, %ymm3548	vpor	%ymm2, %ymm0, %ymm2549	vpunpckhqdq	%ymm10, %ymm6, %ymm0550	vmovdqa	-0x1d0(%rbp), %ymm6551	vpermq	$0x93, %ymm2, %ymm2552	vpblendd	$0xf0, %ymm0, %ymm6, %ymm0553	vpaddq	%ymm0, %ymm12, %ymm12554	vpunpcklqdq	%ymm11, %ymm8, %ymm0555	vpblendd	$0x33, -0x30(%rbp), %ymm11, %ymm11556	vpunpckhqdq	%ymm7, %ymm8, %ymm8557	vpaddq	%ymm2, %ymm12, %ymm12558	vpblendd	$0xf0, %ymm11, %ymm0, %ymm11559	vpblendd	$0xf0, %ymm8, %ymm13, %ymm8560	vpunpcklqdq	%ymm10, %ymm7, %ymm7561	vpxor	%ymm12, %ymm1, %ymm1562	vpaddq	%ymm11, %ymm12, %ymm12563	vpshufd	$0xb1, %ymm1, %ymm1564	vpaddq	%ymm1, %ymm3, %ymm3565	vpxor	%ymm3, %ymm2, %ymm2566	vpshufb	%ymm5, %ymm2, %ymm2567	vpaddq	%ymm2, %ymm12, %ymm12568	vpblendd	$0xf0, %ymm7, %ymm14, %ymm7569	vpxor	%ymm1, %ymm12, %ymm1570	vpshufb	%ymm4, %ymm1, %ymm1571	vpaddq	%ymm1, %ymm3, %ymm3572	vpaddq	%ymm8, %ymm12, %ymm8573	vpxor	%ymm2, %ymm3, %ymm2574	vpsrlq	$0x3f, %ymm2, %ymm0575	vpaddq	%ymm2, %ymm2, %ymm2576	vpermq	$0x93, %ymm1, %ymm1577	vpor	%ymm0, %ymm2, %ymm2578	vpermq	$0x39, %ymm2, %ymm2579	vpaddq	%ymm2, %ymm8, %ymm8580	vpermq	$0x4e, %ymm3, %ymm3581	vpxor	%ymm8, %ymm1, %ymm1582	vpaddq	%ymm7, %ymm8, %ymm8583	vpshufd	$0xb1, %ymm1, %ymm1584	vpaddq	%ymm1, %ymm3, %ymm3585	vpxor	%ymm3, %ymm2, %ymm2586	vpshufb	%ymm5, %ymm2, %ymm2587	vpaddq	%ymm2, %ymm8, %ymm8588	vpxor	%ymm1, %ymm8, %ymm1589	vpaddq	-0x190(%rbp), %ymm8, %ymm8590	vpshufb	%ymm4, %ymm1, %ymm1591	vpaddq	%ymm1, %ymm3, %ymm3592	vpxor	%ymm2, %ymm3, %ymm2593	vpsrlq	$0x3f, %ymm2, %ymm0594	vpaddq	%ymm2, %ymm2, %ymm2595	vpermq	$0x39, %ymm1, %ymm1596	vpor	%ymm0, %ymm2, %ymm2597	vpermq	$0x93, %ymm2, %ymm0598	vpaddq	%ymm0, %ymm8, %ymm8599	vpermq	$0x4e, %ymm3, %ymm3600	vpxor	%ymm8, %ymm1, %ymm1601	vpaddq	-0xb0(%rbp), %ymm8, %ymm8602	vpshufd	$0xb1, %ymm1, %ymm1603	vpaddq	%ymm1, %ymm3, %ymm3604	vpxor	%ymm3, %ymm0, %ymm0605	vpshufb	%ymm5, %ymm0, %ymm0606	vpaddq	%ymm0, %ymm8, %ymm8607	vpxor	%ymm1, %ymm8, %ymm1608	vpaddq	-0xd0(%rbp), %ymm8, %ymm8609	vpshufb	%ymm4, %ymm1, %ymm1610	vpaddq	%ymm1, %ymm3, %ymm3611	vpxor	%ymm0, %ymm3, %ymm0612	vpaddq	%ymm0, %ymm0, %ymm6613	vpermq	$0x93, %ymm1, %ymm1614	vpermq	$0x4e, %ymm3, %ymm3615	vpsrlq	$0x3f, %ymm0, %ymm2616	vpor	%ymm2, %ymm6, %ymm6617	vpermq	$0x39, %ymm6, %ymm6618	vpaddq	%ymm6, %ymm8, %ymm2619	vpxor	%ymm2, %ymm1, %ymm1620	vpaddq	-0xf0(%rbp), %ymm2, %ymm2621	vpshufd	$0xb1, %ymm1, %ymm1622	vpaddq	%ymm1, %ymm3, %ymm3623	vpxor	%ymm3, %ymm6, %ymm6624	vpshufb	%ymm5, %ymm6, %ymm6625	vpaddq	%ymm6, %ymm2, %ymm2626	vpxor	%ymm1, %ymm2, %ymm1627	vpaddq	-0x110(%rbp), %ymm2, %ymm2628	vpshufb	%ymm4, %ymm1, %ymm1629	vpaddq	%ymm1, %ymm3, %ymm3630	vpxor	%ymm6, %ymm3, %ymm6631	vpsrlq	$0x3f, %ymm6, %ymm0632	vpaddq	%ymm6, %ymm6, %ymm6633	vpermq	$0x39, %ymm1, %ymm1634	vpor	%ymm0, %ymm6, %ymm0635	vpermq	$0x93, %ymm0, %ymm0636	vpaddq	%ymm0, %ymm2, %ymm2637	vpermq	$0x4e, %ymm3, %ymm3638	vpxor	%ymm2, %ymm1, %ymm1639	vpaddq	-0x130(%rbp), %ymm2, %ymm2640	vpshufd	$0xb1, %ymm1, %ymm1641	vpaddq	%ymm1, %ymm3, %ymm3642	vpxor	%ymm3, %ymm0, %ymm0643	vpshufb	%ymm5, %ymm0, %ymm0644	vpaddq	%ymm0, %ymm2, %ymm2645	vpxor	%ymm1, %ymm2, %ymm1646	vpaddq	-0x150(%rbp), %ymm2, %ymm2647	vpshufb	%ymm4, %ymm1, %ymm1648	vpaddq	%ymm1, %ymm3, %ymm3649	vpxor	%ymm0, %ymm3, %ymm0650	vpsrlq	$0x3f, %ymm0, %ymm6651	vpaddq	%ymm0, %ymm0, %ymm0652	vpermq	$0x93, %ymm1, %ymm1653	vpor	%ymm6, %ymm0, %ymm0654	vpermq	$0x39, %ymm0, %ymm0655	vpaddq	%ymm0, %ymm2, %ymm2656	vpermq	$0x4e, %ymm3, %ymm3657	vpxor	%ymm2, %ymm1, %ymm1658	vpaddq	-0x170(%rbp), %ymm2, %ymm2659	vpshufd	$0xb1, %ymm1, %ymm1660	vpaddq	%ymm1, %ymm3, %ymm3661	vpxor	%ymm3, %ymm0, %ymm0662	vpshufb	%ymm5, %ymm0, %ymm5663	vpaddq	%ymm5, %ymm2, %ymm2664	vpxor	%ymm1, %ymm2, %ymm1665	vpshufb	%ymm4, %ymm1, %ymm4666	vpaddq	%ymm4, %ymm3, %ymm0667	vpermq	$0x39, %ymm4, %ymm4668	vpxor	%ymm5, %ymm0, %ymm5669	vpsrlq	$0x3f, %ymm5, %ymm1670	vpaddq	%ymm5, %ymm5, %ymm5671	vpermq	$0x4e, %ymm0, %ymm0672	vpor	%ymm1, %ymm5, %ymm5673	vpxor	(%rdi), %ymm0, %ymm0674	vpermq	$0x93, %ymm5, %ymm5675	vpxor	%ymm2, %ymm0, %ymm2676	vmovdqu	%ymm2, (%rdi)677	vpxor	0x20(%rdi), %ymm5, %ymm5678	vpxor	%ymm4, %ymm5, %ymm4679	vmovdqu	%ymm4, 0x20(%rdi)680	vzeroupper681	xorl	%eax, %eax682	addq	$0x170, %rsp683	popq	%r10684	.cfi_def_cfa %r10, 0685	popq	%rbp686	leaq	-0x8(%r10), %rsp687	.cfi_def_cfa %rsp, 8688	retq689 690	.cfi_endproc691.size blake2b_compress_avx2, .-blake2b_compress_avx2692.section .rodata693"blake2b_IV/1":694"DATAat0x4013a0":695"DATAat0x401380":696