FreeBSD Bugzilla – Attachment 235947 Details for
Bug 265756
clang crashes on devel/py-awscrt on amd64 on 14
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
LLVM bitcode file to reproduce crash
crc32c_sse42_asm-da3aa7.ll.txt (text/plain), 43.34 KB, created by
John F. Carr
on 2022-08-16 19:49:04 UTC
(
hide
)
Description:
LLVM bitcode file to reproduce crash
Filename:
MIME Type:
Creator:
John F. Carr
Created:
2022-08-16 19:49:04 UTC
Size:
43.34 KB
patch
obsolete
>; ModuleID = 'crc32c_sse42_asm-da3aa7.c' >source_filename = "crc32c_sse42_asm-da3aa7.c" >target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128" >target triple = "x86_64-unknown-freebsd14.0" > >@detection_performed = internal unnamed_addr global i1 false, align 1, !dbg !0 >@detected_clmul = internal unnamed_addr global i8 0, align 1, !dbg !19 > >; Function Attrs: nounwind sspstrong uwtable >define i32 @aws_checksums_crc32c_hw(i8* noundef %input, i32 noundef %length, i32 noundef %previousCrc32) local_unnamed_addr #0 !dbg !30 { >entry: > call void @llvm.dbg.value(metadata i8* %input, metadata !44, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i32 %length, metadata !45, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i32 %previousCrc32, metadata !46, metadata !DIExpression()), !dbg !50 > %.b144 = load i1, i1* @detection_performed, align 1, !dbg !51 > br i1 %.b144, label %if.end, label %if.then, !dbg !53, !prof !54 > >if.then: ; preds = %entry > %call = tail call zeroext i1 @aws_cpu_has_feature(i32 noundef 0) #3, !dbg !55 > %frombool = zext i1 %call to i8, !dbg !57 > store i8 %frombool, i8* @detected_clmul, align 1, !dbg !57 > store i1 true, i1* @detection_performed, align 1, !dbg !58 > br label %if.end, !dbg !59 > >if.end: ; preds = %if.then, %entry > %neg = xor i32 %previousCrc32, -1, !dbg !60 > call void @llvm.dbg.value(metadata i32 %neg, metadata !47, metadata !DIExpression()), !dbg !50 > %cmp = icmp slt i32 %length, 8, !dbg !61 > br i1 %cmp, label %while.cond.preheader, label %if.end16, !dbg !63, !prof !64 > >while.cond.preheader: ; preds = %if.end > call void @llvm.dbg.value(metadata i32 %neg, metadata !47, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i8* %input, metadata !44, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i32 %length, metadata !45, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i32 %length, metadata !45, metadata !DIExpression(DW_OP_constu, 1, DW_OP_minus, DW_OP_stack_value)), !dbg !50 > %cmp13186 = icmp sgt i32 %length, 0, !dbg !65 > br i1 %cmp13186, label %while.body, label %cleanup, !dbg !67 > >while.body: ; preds = %while.cond.preheader, %while.body > %crc.0189 = phi i32 [ %0, %while.body ], [ %neg, %while.cond.preheader ] > %input.addr.0188 = phi i8* [ %incdec.ptr, %while.body ], [ %input, %while.cond.preheader ] > %length.addr.0187 = phi i32 [ %dec, %while.body ], [ %length, %while.cond.preheader ] > call void @llvm.dbg.value(metadata i32 %crc.0189, metadata !47, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i8* %input.addr.0188, metadata !44, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i32 %length.addr.0187, metadata !45, metadata !DIExpression()), !dbg !50 > %dec = add nsw i32 %length.addr.0187, -1, !dbg !68 > call void @llvm.dbg.value(metadata i32 %dec, metadata !45, metadata !DIExpression()), !dbg !50 > %0 = tail call i32 asm "loop_small_${:uid}: CRC32B ($2), $1", "={cx},{cx},r,0,~{dirflag},~{fpsr},~{flags}"(i32 %crc.0189, i8* %input.addr.0188, i32 %crc.0189) #4, !dbg !69, !srcloc !71 > call void @llvm.dbg.value(metadata i32 %0, metadata !47, metadata !DIExpression()), !dbg !50 > %incdec.ptr = getelementptr inbounds i8, i8* %input.addr.0188, i64 1, !dbg !72 > call void @llvm.dbg.value(metadata i8* %incdec.ptr, metadata !44, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i32 %dec, metadata !45, metadata !DIExpression(DW_OP_constu, 1, DW_OP_minus, DW_OP_stack_value)), !dbg !50 > %cmp13 = icmp ugt i32 %length.addr.0187, 1, !dbg !65 > br i1 %cmp13, label %while.body, label %cleanup, !dbg !67, !llvm.loop !73 > >if.end16: ; preds = %if.end > %1 = ptrtoint i8* %input to i64, !dbg !75 > %2 = trunc i64 %1 to i32, !dbg !75 > call void @llvm.dbg.value(metadata i32 %2, metadata !48, metadata !DIExpression(DW_OP_constu, 7, DW_OP_and, DW_OP_stack_value)), !dbg !50 > %sub = sub i32 0, %2, !dbg !76 > %and18 = and i32 %sub, 7, !dbg !77 > call void @llvm.dbg.value(metadata i32 %and18, metadata !49, metadata !DIExpression()), !dbg !50 > %sub19 = sub nuw nsw i32 %length, %and18, !dbg !78 > call void @llvm.dbg.value(metadata i32 %sub19, metadata !45, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i32 %and18, metadata !49, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i32 %neg, metadata !47, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i8* %input, metadata !44, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i32 %and18, metadata !49, metadata !DIExpression(DW_OP_constu, 1, DW_OP_minus, DW_OP_stack_value)), !dbg !50 > %cmp22147.not = icmp eq i32 %and18, 0, !dbg !79 > br i1 %cmp22147.not, label %while.end26, label %while.body24, !dbg !80 > >while.body24: ; preds = %if.end16, %while.body24 > %leading.0150 = phi i32 [ %dec21, %while.body24 ], [ %and18, %if.end16 ] > %crc.1149 = phi i32 [ %3, %while.body24 ], [ %neg, %if.end16 ] > %input.addr.1148 = phi i8* [ %incdec.ptr25, %while.body24 ], [ %input, %if.end16 ] > call void @llvm.dbg.value(metadata i32 %leading.0150, metadata !49, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i32 %crc.1149, metadata !47, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i8* %input.addr.1148, metadata !44, metadata !DIExpression()), !dbg !50 > %dec21 = add nsw i32 %leading.0150, -1, !dbg !81 > call void @llvm.dbg.value(metadata i32 %dec21, metadata !49, metadata !DIExpression()), !dbg !50 > %3 = tail call i32 asm "loop_leading_${:uid}: CRC32B ($2), $1", "={cx},{cx},r,0,~{dirflag},~{fpsr},~{flags}"(i32 %crc.1149, i8* %input.addr.1148, i32 %crc.1149) #4, !dbg !82, !srcloc !84 > call void @llvm.dbg.value(metadata i32 %3, metadata !47, metadata !DIExpression()), !dbg !50 > %incdec.ptr25 = getelementptr inbounds i8, i8* %input.addr.1148, i64 1, !dbg !85 > call void @llvm.dbg.value(metadata i8* %incdec.ptr25, metadata !44, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i32 %dec21, metadata !49, metadata !DIExpression(DW_OP_constu, 1, DW_OP_minus, DW_OP_stack_value)), !dbg !50 > %cmp22 = icmp ugt i32 %leading.0150, 1, !dbg !79 > br i1 %cmp22, label %while.body24, label %while.end26, !dbg !80, !llvm.loop !86 > >while.end26: ; preds = %while.body24, %if.end16 > %input.addr.1.lcssa = phi i8* [ %input, %if.end16 ], [ %incdec.ptr25, %while.body24 ] > %crc.1.lcssa = phi i32 [ %neg, %if.end16 ], [ %3, %while.body24 ], !dbg !50 > %4 = load i8, i8* @detected_clmul, align 1, !dbg !88, !range !90 > %tobool27.not = icmp eq i8 %4, 0, !dbg !88 > br i1 %tobool27.not, label %if.end80, label %while.cond36.preheader, !dbg !91, !prof !64 > >while.cond36.preheader: ; preds = %while.end26 > call void @llvm.dbg.value(metadata i32 %crc.1.lcssa, metadata !47, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i8* %input.addr.1.lcssa, metadata !44, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i32 %sub19, metadata !45, metadata !DIExpression()), !dbg !50 > %cmp37152 = icmp sgt i32 %sub19, 3071, !dbg !92 > br i1 %cmp37152, label %while.body46, label %while.cond50.preheader, !dbg !94, !prof !54 > >while.cond50.preheader.loopexit: ; preds = %while.body46 > %asmresult.i.le = extractvalue { i32, i8* } %5, 0, !dbg !95 > br label %while.cond50.preheader, !dbg !104 > >while.cond50.preheader: ; preds = %while.cond50.preheader.loopexit, %while.cond36.preheader > %length.addr.1.lcssa = phi i32 [ %sub19, %while.cond36.preheader ], [ %sub48, %while.cond50.preheader.loopexit ], !dbg !50 > %input.addr.2.lcssa = phi i8* [ %input.addr.1.lcssa, %while.cond36.preheader ], [ %add.ptr, %while.cond50.preheader.loopexit ] > %crc.2.lcssa = phi i32 [ %crc.1.lcssa, %while.cond36.preheader ], [ %asmresult.i.le, %while.cond50.preheader.loopexit ], !dbg !50 > call void @llvm.dbg.value(metadata i32 %crc.2.lcssa, metadata !47, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i8* %input.addr.2.lcssa, metadata !44, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i32 %length.addr.1.lcssa, metadata !45, metadata !DIExpression()), !dbg !50 > %cmp51159 = icmp sgt i32 %length.addr.1.lcssa, 1023, !dbg !104 > br i1 %cmp51159, label %while.body60, label %while.cond65.preheader, !dbg !105, !prof !54 > >while.body46: ; preds = %while.cond36.preheader, %while.body46 > %crc.2155 = phi i32 [ %asmresult.i, %while.body46 ], [ %crc.1.lcssa, %while.cond36.preheader ] > %input.addr.2154 = phi i8* [ %add.ptr, %while.body46 ], [ %input.addr.1.lcssa, %while.cond36.preheader ] > %length.addr.1153 = phi i32 [ %sub48, %while.body46 ], [ %sub19, %while.cond36.preheader ] > call void @llvm.dbg.value(metadata i32 %crc.2155, metadata !47, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i8* %input.addr.2154, metadata !44, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i32 %length.addr.1153, metadata !45, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i8* %input.addr.2154, metadata !100, metadata !DIExpression()) #3, !dbg !106 > call void @llvm.dbg.value(metadata i32 %crc.2155, metadata !101, metadata !DIExpression()) #3, !dbg !106 > %5 = tail call { i32, i8* } asm sideeffect "enter_3072_${:uid}:xor %r11, %r11 # zero all 64 bits in r11, will track crc1 \0Axor %r10, %r10 # zero all 64 bits in r10, will track crc2 \0Amovl $$16, %r8d # Loop 16 times through 64 byte chunks in 3 parallel stripes \0Aloop_3072_${:uid}:prefetcht0 128($3) # \0Aprefetcht0 1152($3) # \0Aprefetcht0 2176($3) # \0Acrc32q 0($3), %rcx # crc0: stripe0 \0Acrc32q 1024($3), %r11 # crc1: stripe1 \0Acrc32q 2048($3), %r10 # crc2: stripe2 \0Acrc32q 8($3), %rcx # crc0: stripe0 \0Acrc32q 1032($3), %r11 # crc1: stripe1 \0Acrc32q 2056($3), %r10 # crc2: stripe2 \0Acrc32q 16($3), %rcx # crc0: stripe0 \0Acrc32q 1040($3), %r11 # crc1: stripe1 \0Acrc32q 2064($3), %r10 # crc2: stripe2 \0Acrc32q 24($3), %rcx # crc0: stripe0 \0Acrc32q 1048($3), %r11 # crc1: stripe1 \0Acrc32q 2072($3), %r10 # crc2: stripe2 \0Acrc32q 32($3), %rcx # crc0: stripe0 \0Acrc32q 1056($3), %r11 # crc1: stripe1 \0Acrc32q 2080($3), %r10 # crc2: stripe2 \0Acrc32q 40($3), %rcx # crc0: stripe0 \0Acrc32q 1064($3), %r11 # crc1: stripe1 \0Acrc32q 2088($3), %r10 # crc2: stripe2 \0Acrc32q 48($3), %rcx # crc0: stripe0 \0Acrc32q 1072($3), %r11 # crc1: stripe1 \0Acrc32q 2096($3), %r10 # crc2: stripe2 \0Acrc32q 56($3), %rcx # crc0: stripe0 \0Acrc32q 1080($3), %r11 # crc1: stripe1 \0Acrc32q 2104($3), %r10 # crc2: stripe2 \0Aadd $$64, $3 # \0Asub $$1, %r8d # \0Ajnz loop_3072_${:uid} # \0Afold_k1k2_3072_${:uid}: \0Amovl $$0xa51b6135, %r8d # Magic K1 constant \0Amovl $$0x170076fa, %r9d # Magic K2 constant \0Amovq %rcx, %xmm1 # crc0 into lower dword of xmm1 \0Amovq %r8, %xmm3 # K1 into lower dword of xmm3 \0Amovq %r11, %xmm2 # crc1 into lower dword of xmm2 \0Amovq %r9, %xmm4 # K2 into lower dword of xmm4 \0Apclmulqdq $$0x00, %xmm3, %xmm1 # Multiply crc0 by K1 \0Apclmulqdq $$0x00, %xmm4, %xmm2 # Multiply crc1 by K2 \0Axor %rcx, %rcx # \0Axor %r11, %r11 # \0Amovq %xmm1, %r8 # \0Amovq %xmm2, %r9 # \0Acrc32q %r8, %rcx # folding crc0 \0Acrc32q %r9, %r11 # folding crc1 \0Axor %r10d, %ecx # combine crc2 and crc0 \0Axor %r11d, %ecx # combine crc1 and crc0 \0A", "={cx},={dx},{cx},{dx},0,1,~{r8},~{r9},~{r11},~{r10},~{xmm1},~{xmm2},~{xmm3},~{xmm4},~{cc},~{dirflag},~{fpsr},~{flags}"(i32 %crc.2155, i8* %input.addr.2154, i32 %crc.2155, i8* %input.addr.2154) #3, !dbg !95, !srcloc !107 > %asmresult.i = extractvalue { i32, i8* } %5, 0, !dbg !95 > call void @llvm.dbg.value(metadata i32 %asmresult.i, metadata !101, metadata !DIExpression()) #3, !dbg !106 > call void @llvm.dbg.value(metadata i8* undef, metadata !100, metadata !DIExpression()) #3, !dbg !106 > call void @llvm.dbg.value(metadata i32 %asmresult.i, metadata !47, metadata !DIExpression()), !dbg !50 > %add.ptr = getelementptr inbounds i8, i8* %input.addr.2154, i64 3072, !dbg !108 > call void @llvm.dbg.value(metadata i8* %add.ptr, metadata !44, metadata !DIExpression()), !dbg !50 > %sub48 = add nsw i32 %length.addr.1153, -3072, !dbg !109 > call void @llvm.dbg.value(metadata i32 %sub48, metadata !45, metadata !DIExpression()), !dbg !50 > %cmp37 = icmp ugt i32 %length.addr.1153, 6143, !dbg !92 > br i1 %cmp37, label %while.body46, label %while.cond50.preheader.loopexit, !dbg !94, !prof !54, !llvm.loop !110 > >while.cond65.preheader.loopexit: ; preds = %while.body60 > %asmresult.i145.le = extractvalue { i32, i8* } %6, 0, !dbg !112 > br label %while.cond65.preheader, !dbg !119 > >while.cond65.preheader: ; preds = %while.cond65.preheader.loopexit, %while.cond50.preheader > %length.addr.2.lcssa = phi i32 [ %length.addr.1.lcssa, %while.cond50.preheader ], [ %sub63, %while.cond65.preheader.loopexit ], !dbg !50 > %input.addr.3.lcssa = phi i8* [ %input.addr.2.lcssa, %while.cond50.preheader ], [ %add.ptr62, %while.cond65.preheader.loopexit ] > %crc.3.lcssa = phi i32 [ %crc.2.lcssa, %while.cond50.preheader ], [ %asmresult.i145.le, %while.cond65.preheader.loopexit ], !dbg !50 > call void @llvm.dbg.value(metadata i32 %crc.3.lcssa, metadata !47, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i8* %input.addr.3.lcssa, metadata !44, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i32 %length.addr.2.lcssa, metadata !45, metadata !DIExpression()), !dbg !50 > %cmp66167 = icmp sgt i32 %length.addr.2.lcssa, 255, !dbg !119 > br i1 %cmp66167, label %while.body75, label %if.end80, !dbg !120, !prof !54 > >while.body60: ; preds = %while.cond50.preheader, %while.body60 > %crc.3162 = phi i32 [ %asmresult.i145, %while.body60 ], [ %crc.2.lcssa, %while.cond50.preheader ] > %input.addr.3161 = phi i8* [ %add.ptr62, %while.body60 ], [ %input.addr.2.lcssa, %while.cond50.preheader ] > %length.addr.2160 = phi i32 [ %sub63, %while.body60 ], [ %length.addr.1.lcssa, %while.cond50.preheader ] > call void @llvm.dbg.value(metadata i32 %crc.3162, metadata !47, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i8* %input.addr.3161, metadata !44, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i32 %length.addr.2160, metadata !45, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i8* %input.addr.3161, metadata !115, metadata !DIExpression()) #3, !dbg !121 > call void @llvm.dbg.value(metadata i32 %crc.3162, metadata !116, metadata !DIExpression()) #3, !dbg !121 > %6 = tail call { i32, i8* } asm sideeffect "enter_1024_${:uid}:xor %r11, %r11 # zero all 64 bits in r11, will track crc1 \0Axor %r10, %r10 # zero all 64 bits in r10, will track crc2 \0Amovl $$5, %r8d # Loop 5 times through 64 byte chunks in 3 parallel stripes \0Aloop_1024_${:uid}:prefetcht0 128($3) # \0Aprefetcht0 472($3) # \0Aprefetcht0 808($3) # \0Acrc32q 0($3), %rcx # crc0: stripe0 \0Acrc32q 344($3), %r11 # crc1: stripe1 \0Acrc32q 680($3), %r10 # crc2: stripe2 \0Acrc32q 8($3), %rcx # crc0 \0Acrc32q 352($3), %r11 # crc1 \0Acrc32q 688($3), %r10 # crc2 \0Acrc32q 16($3), %rcx # crc0 \0Acrc32q 360($3), %r11 # crc1 \0Acrc32q 696($3), %r10 # crc2 \0Acrc32q 24($3), %rcx # crc0 \0Acrc32q 368($3), %r11 # crc1 \0Acrc32q 704($3), %r10 # crc2 \0Acrc32q 32($3), %rcx # crc0 \0Acrc32q 376($3), %r11 # crc1 \0Acrc32q 712($3), %r10 # crc2 \0Acrc32q 40($3), %rcx # crc0 \0Acrc32q 384($3), %r11 # crc1 \0Acrc32q 720($3), %r10 # crc2 \0Acrc32q 48($3), %rcx # crc0 \0Acrc32q 392($3), %r11 # crc1 \0Acrc32q 728($3), %r10 # crc2 \0Acrc32q 56($3), %rcx # crc0 \0Acrc32q 400($3), %r11 # crc1 \0Acrc32q 736($3), %r10 # crc2 \0Aadd $$64, $3 # \0Asub $$1, %r8d # \0Ajnz loop_1024_${:uid} # \0Acrc32q 0($3), %rcx # crc0 \0Acrc32q 344($3), %r11 # crc1 \0Acrc32q 680($3), %r10 # crc2 \0Acrc32q 8($3), %rcx # crc0 \0Acrc32q 352($3), %r11 # crc1 \0Acrc32q 688($3), %r10 # crc2 \0Acrc32q 16($3), %rcx # crc0 \0Acrc32q 696($3), %r10 # crc2 \0Afold_k1k2_1024_${:uid}: \0Amovl $$0xe417f38a, %r8d # Magic K1 constant \0Amovl $$0x8f158014, %r9d # Magic K2 constant \0Amovq %rcx, %xmm1 # crc0 into lower dword of xmm1 \0Amovq %r8, %xmm3 # K1 into lower dword of xmm3 \0Amovq %r11, %xmm2 # crc1 into lower dword of xmm2 \0Amovq %r9, %xmm4 # K2 into lower dword of xmm4 \0Apclmulqdq $$0x00, %xmm3, %xmm1 # Multiply crc0 by K1 \0Apclmulqdq $$0x00, %xmm4, %xmm2 # Multiply crc1 by K2 \0Axor %rcx, %rcx # \0Axor %r11, %r11 # \0Amovq %xmm1, %r8 # \0Amovq %xmm2, %r9 # \0Acrc32q %r8, %rcx # folding crc0 \0Acrc32q %r9, %r11 # folding crc1 \0Axor %r10d, %ecx # combine crc2 and crc0 \0Axor %r11d, %ecx # combine crc1 and crc0 \0A", "={cx},={dx},{cx},{dx},0,1,~{r8},~{r9},~{r11},~{r10},~{xmm1},~{xmm2},~{xmm3},~{xmm4},~{cc},~{dirflag},~{fpsr},~{flags}"(i32 %crc.3162, i8* %input.addr.3161, i32 %crc.3162, i8* %input.addr.3161) #3, !dbg !112, !srcloc !122 > %asmresult.i145 = extractvalue { i32, i8* } %6, 0, !dbg !112 > call void @llvm.dbg.value(metadata i32 %asmresult.i145, metadata !116, metadata !DIExpression()) #3, !dbg !121 > call void @llvm.dbg.value(metadata i8* undef, metadata !115, metadata !DIExpression()) #3, !dbg !121 > call void @llvm.dbg.value(metadata i32 %asmresult.i145, metadata !47, metadata !DIExpression()), !dbg !50 > %add.ptr62 = getelementptr inbounds i8, i8* %input.addr.3161, i64 1024, !dbg !123 > call void @llvm.dbg.value(metadata i8* %add.ptr62, metadata !44, metadata !DIExpression()), !dbg !50 > %sub63 = add nsw i32 %length.addr.2160, -1024, !dbg !124 > call void @llvm.dbg.value(metadata i32 %sub63, metadata !45, metadata !DIExpression()), !dbg !50 > %cmp51 = icmp ugt i32 %length.addr.2160, 2047, !dbg !104 > br i1 %cmp51, label %while.body60, label %while.cond65.preheader.loopexit, !dbg !105, !prof !54, !llvm.loop !125 > >while.body75: ; preds = %while.cond65.preheader, %while.body75 > %crc.4170 = phi i32 [ %7, %while.body75 ], [ %crc.3.lcssa, %while.cond65.preheader ] > %input.addr.4169 = phi i8* [ %add.ptr77, %while.body75 ], [ %input.addr.3.lcssa, %while.cond65.preheader ] > %length.addr.3168 = phi i32 [ %sub78, %while.body75 ], [ %length.addr.2.lcssa, %while.cond65.preheader ] > call void @llvm.dbg.value(metadata i32 %crc.4170, metadata !47, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i8* %input.addr.4169, metadata !44, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i32 %length.addr.3168, metadata !45, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i8* %input.addr.4169, metadata !127, metadata !DIExpression()) #3, !dbg !131 > call void @llvm.dbg.value(metadata i32 %crc.4170, metadata !130, metadata !DIExpression()) #3, !dbg !131 > %7 = tail call i32 asm sideeffect "enter_256_${:uid}:xor %r11, %r11 # zero all 64 bits in r11, will track crc1 \0Axor %r10, %r10 # zero all 64 bits in r10, will track crc2 \0Acrc32q 0($2), %rcx # crc0 \0Acrc32q 88($2), %r11 # crc1 \0Acrc32q 176($2), %r10 # crc2 \0Acrc32q 8($2), %rcx # crc0 \0Acrc32q 96($2), %r11 # crc1 \0Acrc32q 184($2), %r10 # crc2 \0Acrc32q 16($2), %rcx # crc0 \0Acrc32q 104($2), %r11 # crc1 \0Acrc32q 192($2), %r10 # crc2 \0Acrc32q 24($2), %rcx # crc0 \0Acrc32q 112($2), %r11 # crc1 \0Acrc32q 200($2), %r10 # crc2 \0Acrc32q 32($2), %rcx # crc0 \0Acrc32q 120($2), %r11 # crc1 \0Acrc32q 208($2), %r10 # crc2 \0Acrc32q 40($2), %rcx # crc0 \0Acrc32q 128($2), %r11 # crc1 \0Acrc32q 216($2), %r10 # crc2 \0Acrc32q 48($2), %rcx # crc0 \0Acrc32q 136($2), %r11 # crc1 \0Acrc32q 224($2), %r10 # crc2 \0Acrc32q 56($2), %rcx # crc0 \0Acrc32q 144($2), %r11 # crc1 \0Acrc32q 232($2), %r10 # crc2 \0Acrc32q 64($2), %rcx # crc0 \0Acrc32q 152($2), %r11 # crc1 \0Acrc32q 240($2), %r10 # crc2 \0Acrc32q 72($2), %rcx # crc0 \0Acrc32q 160($2), %r11 # crc1 \0Acrc32q 248($2), %r10 # crc2 \0Acrc32q 80($2), %rcx # crc0 \0Acrc32q 168($2), %r11 # crc2 \0Afold_k1k2_256_${:uid}: \0Amovl $$0x1b3d8f29, %r8d # Magic K1 constant \0Amovl $$0x39d3b296, %r9d # Magic K2 constant \0Amovq %rcx, %xmm1 # crc0 into lower dword of xmm1 \0Amovq %r8, %xmm3 # K1 into lower dword of xmm3 \0Amovq %r11, %xmm2 # crc1 into lower dword of xmm2 \0Amovq %r9, %xmm4 # K2 into lower dword of xmm4 \0Apclmulqdq $$0x00, %xmm3, %xmm1 # Multiply crc0 by K1 \0Apclmulqdq $$0x00, %xmm4, %xmm2 # Multiply crc1 by K2 \0Axor %rcx, %rcx # \0Axor %r11, %r11 # \0Amovq %xmm1, %r8 # \0Amovq %xmm2, %r9 # \0Acrc32q %r8, %rcx # folding crc0 \0Acrc32q %r9, %r11 # folding crc1 \0Axor %r10d, %ecx # combine crc2 and crc0 \0Axor %r11d, %ecx # combine crc1 and crc0 \0A", "={cx},{cx},{dx},0,~{r8},~{r9},~{r11},~{r10},~{xmm1},~{xmm2},~{xmm3},~{xmm4},~{cc},~{dirflag},~{fpsr},~{flags}"(i32 %crc.4170, i8* %input.addr.4169, i32 %crc.4170) #3, !dbg !134, !srcloc !135 > call void @llvm.dbg.value(metadata i32 %7, metadata !130, metadata !DIExpression()) #3, !dbg !131 > call void @llvm.dbg.value(metadata i32 %7, metadata !47, metadata !DIExpression()), !dbg !50 > %add.ptr77 = getelementptr inbounds i8, i8* %input.addr.4169, i64 256, !dbg !136 > call void @llvm.dbg.value(metadata i8* %add.ptr77, metadata !44, metadata !DIExpression()), !dbg !50 > %sub78 = add nsw i32 %length.addr.3168, -256, !dbg !137 > call void @llvm.dbg.value(metadata i32 %sub78, metadata !45, metadata !DIExpression()), !dbg !50 > %cmp66 = icmp ugt i32 %length.addr.3168, 511, !dbg !119 > br i1 %cmp66, label %while.body75, label %if.end80, !dbg !120, !prof !54, !llvm.loop !138 > >if.end80: ; preds = %while.body75, %while.cond65.preheader, %while.end26 > %length.addr.4 = phi i32 [ %sub19, %while.end26 ], [ %length.addr.2.lcssa, %while.cond65.preheader ], [ %sub78, %while.body75 ], !dbg !78 > %input.addr.5 = phi i8* [ %input.addr.1.lcssa, %while.end26 ], [ %input.addr.3.lcssa, %while.cond65.preheader ], [ %add.ptr77, %while.body75 ] > %crc.5 = phi i32 [ %crc.1.lcssa, %while.end26 ], [ %crc.3.lcssa, %while.cond65.preheader ], [ %7, %while.body75 ], !dbg !140 > call void @llvm.dbg.value(metadata i32 %crc.5, metadata !47, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i8* %input.addr.5, metadata !44, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i32 %length.addr.4, metadata !45, metadata !DIExpression()), !dbg !50 > %cmp82174 = icmp sgt i32 %length.addr.4, 7, !dbg !141 > br i1 %cmp82174, label %while.body91, label %while.cond95.preheader, !dbg !142, !prof !54 > >while.cond95.preheader: ; preds = %while.body91, %if.end80 > %length.addr.5.lcssa = phi i32 [ %length.addr.4, %if.end80 ], [ %sub93, %while.body91 ], !dbg !50 > %input.addr.6.lcssa = phi i8* [ %input.addr.5, %if.end80 ], [ %add.ptr92, %while.body91 ] > %crc.6.lcssa = phi i32 [ %crc.5, %if.end80 ], [ %8, %while.body91 ], !dbg !50 > call void @llvm.dbg.value(metadata i32 %crc.6.lcssa, metadata !47, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i8* %input.addr.6.lcssa, metadata !44, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i32 %length.addr.5.lcssa, metadata !45, metadata !DIExpression(DW_OP_constu, 1, DW_OP_minus, DW_OP_stack_value)), !dbg !50 > %cmp97181 = icmp sgt i32 %length.addr.5.lcssa, 0, !dbg !143 > br i1 %cmp97181, label %while.body99, label %cleanup, !dbg !144 > >while.body91: ; preds = %if.end80, %while.body91 > %crc.6177 = phi i32 [ %8, %while.body91 ], [ %crc.5, %if.end80 ] > %input.addr.6176 = phi i8* [ %add.ptr92, %while.body91 ], [ %input.addr.5, %if.end80 ] > %length.addr.5175 = phi i32 [ %sub93, %while.body91 ], [ %length.addr.4, %if.end80 ] > call void @llvm.dbg.value(metadata i32 %crc.6177, metadata !47, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i8* %input.addr.6176, metadata !44, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i32 %length.addr.5175, metadata !45, metadata !DIExpression()), !dbg !50 > %8 = tail call i32 asm sideeffect "loop_8_${:uid}: CRC32Q ($2), %rcx", "={cx},{cx},r,0,~{dirflag},~{fpsr},~{flags}"(i32 %crc.6177, i8* %input.addr.6176, i32 %crc.6177) #3, !dbg !145, !srcloc !147 > call void @llvm.dbg.value(metadata i32 %8, metadata !47, metadata !DIExpression()), !dbg !50 > %add.ptr92 = getelementptr inbounds i8, i8* %input.addr.6176, i64 8, !dbg !148 > call void @llvm.dbg.value(metadata i8* %add.ptr92, metadata !44, metadata !DIExpression()), !dbg !50 > %sub93 = add nsw i32 %length.addr.5175, -8, !dbg !149 > call void @llvm.dbg.value(metadata i32 %sub93, metadata !45, metadata !DIExpression()), !dbg !50 > %cmp82 = icmp ugt i32 %length.addr.5175, 15, !dbg !141 > br i1 %cmp82, label %while.body91, label %while.cond95.preheader, !dbg !142, !prof !54, !llvm.loop !150 > >while.body99: ; preds = %while.cond95.preheader, %while.body99 > %crc.7184 = phi i32 [ %9, %while.body99 ], [ %crc.6.lcssa, %while.cond95.preheader ] > %input.addr.7183 = phi i8* [ %incdec.ptr100, %while.body99 ], [ %input.addr.6.lcssa, %while.cond95.preheader ] > %length.addr.6182 = phi i32 [ %dec96, %while.body99 ], [ %length.addr.5.lcssa, %while.cond95.preheader ] > call void @llvm.dbg.value(metadata i32 %crc.7184, metadata !47, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i8* %input.addr.7183, metadata !44, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i32 %length.addr.6182, metadata !45, metadata !DIExpression()), !dbg !50 > %dec96 = add nsw i32 %length.addr.6182, -1, !dbg !152 > call void @llvm.dbg.value(metadata i32 %dec96, metadata !45, metadata !DIExpression()), !dbg !50 > %9 = tail call i32 asm sideeffect "loop_trailing_${:uid}: CRC32B ($2), $1", "={cx},{cx},r,0,~{dirflag},~{fpsr},~{flags}"(i32 %crc.7184, i8* %input.addr.7183, i32 %crc.7184) #3, !dbg !153, !srcloc !155 > call void @llvm.dbg.value(metadata i32 %9, metadata !47, metadata !DIExpression()), !dbg !50 > %incdec.ptr100 = getelementptr inbounds i8, i8* %input.addr.7183, i64 1, !dbg !156 > call void @llvm.dbg.value(metadata i8* %incdec.ptr100, metadata !44, metadata !DIExpression()), !dbg !50 > call void @llvm.dbg.value(metadata i32 %dec96, metadata !45, metadata !DIExpression(DW_OP_constu, 1, DW_OP_minus, DW_OP_stack_value)), !dbg !50 > %cmp97 = icmp ugt i32 %length.addr.6182, 1, !dbg !143 > br i1 %cmp97, label %while.body99, label %cleanup, !dbg !144, !llvm.loop !157 > >cleanup: ; preds = %while.body99, %while.body, %while.cond95.preheader, %while.cond.preheader > %retval.0.in = phi i32 [ %neg, %while.cond.preheader ], [ %crc.6.lcssa, %while.cond95.preheader ], [ %0, %while.body ], [ %9, %while.body99 ] > %retval.0 = xor i32 %retval.0.in, -1, !dbg !50 > ret i32 %retval.0, !dbg !159 >} > >declare !dbg !160 zeroext i1 @aws_cpu_has_feature(i32 noundef) local_unnamed_addr #1 > >; Function Attrs: nounwind sspstrong uwtable >define i32 @aws_checksums_crc32_hw(i8* noundef %input, i32 noundef %length, i32 noundef %previousCrc32) local_unnamed_addr #0 !dbg !164 { >entry: > call void @llvm.dbg.value(metadata i8* %input, metadata !166, metadata !DIExpression()), !dbg !169 > call void @llvm.dbg.value(metadata i32 %length, metadata !167, metadata !DIExpression()), !dbg !169 > call void @llvm.dbg.value(metadata i32 %previousCrc32, metadata !168, metadata !DIExpression()), !dbg !169 > %call = tail call i32 @aws_checksums_crc32_sw(i8* noundef %input, i32 noundef %length, i32 noundef %previousCrc32) #3, !dbg !170 > ret i32 %call, !dbg !171 >} > >declare !dbg !172 i32 @aws_checksums_crc32_sw(i8* noundef, i32 noundef, i32 noundef) local_unnamed_addr #1 > >; Function Attrs: nofree nosync nounwind readnone speculatable willreturn >declare void @llvm.dbg.value(metadata, metadata, metadata) #2 > >attributes #0 = { nounwind sspstrong uwtable "frame-pointer"="all" "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" } >attributes #1 = { "frame-pointer"="all" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" } >attributes #2 = { nofree nosync nounwind readnone speculatable willreturn } >attributes #3 = { nounwind } >attributes #4 = { nounwind readnone } > >!llvm.dbg.cu = !{!2} >!llvm.module.flags = !{!23, !24, !25, !26, !27, !28} >!llvm.ident = !{!29} > >!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression(DW_OP_deref_size, 1, DW_OP_constu, 1, DW_OP_mul, DW_OP_constu, 0, DW_OP_plus, DW_OP_stack_value)) >!1 = distinct !DIGlobalVariable(name: "detection_performed", scope: !2, file: !21, line: 287, type: !22, isLocal: true, isDefinition: true) >!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 14.0.6 (git@github.com:OpenCilk/opencilk-project.git 523da9eb198f8260fc59681674bd4cd1c7db48c9)", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, retainedTypes: !15, globals: !17, splitDebugInlining: false, nameTableKind: None) >!3 = !DIFile(filename: "crc32c_sse42_asm.c", directory: "/usr/ports/devel/py-awscrt/work-py39/awscrt-0.13.14/build/temp.freebsd-14.0-CURRENT-amd64-cpython-39/deps/aws-checksums") >!4 = !{!5} >!5 = !DICompositeType(tag: DW_TAG_enumeration_type, name: "aws_cpu_feature_name", file: !6, line: 10, baseType: !7, size: 32, elements: !8) >!6 = !DIFile(filename: "install/include/aws/common/cpuid.h", directory: "/usr/ports/devel/py-awscrt/work-py39/awscrt-0.13.14/build/temp.freebsd-14.0-CURRENT-amd64-cpython-39/deps") >!7 = !DIBasicType(name: "unsigned int", size: 32, encoding: DW_ATE_unsigned) >!8 = !{!9, !10, !11, !12, !13, !14} >!9 = !DIEnumerator(name: "AWS_CPU_FEATURE_CLMUL", value: 0) >!10 = !DIEnumerator(name: "AWS_CPU_FEATURE_SSE_4_1", value: 1) >!11 = !DIEnumerator(name: "AWS_CPU_FEATURE_SSE_4_2", value: 2) >!12 = !DIEnumerator(name: "AWS_CPU_FEATURE_AVX2", value: 3) >!13 = !DIEnumerator(name: "AWS_CPU_FEATURE_ARM_CRC", value: 4) >!14 = !DIEnumerator(name: "AWS_CPU_FEATURE_COUNT", value: 5) >!15 = !{!16} >!16 = !DIBasicType(name: "unsigned long", size: 64, encoding: DW_ATE_unsigned) >!17 = !{!18, !19} >!18 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression()) >!19 = !DIGlobalVariableExpression(var: !20, expr: !DIExpression()) >!20 = distinct !DIGlobalVariable(name: "detected_clmul", scope: !2, file: !21, line: 288, type: !22, isLocal: true, isDefinition: true) >!21 = !DIFile(filename: "crt/aws-checksums/source/intel/asm/crc32c_sse42_asm.c", directory: "/usr/ports/devel/py-awscrt/work-py39/awscrt-0.13.14") >!22 = !DIBasicType(name: "_Bool", size: 8, encoding: DW_ATE_boolean) >!23 = !{i32 7, !"Dwarf Version", i32 4} >!24 = !{i32 2, !"Debug Info Version", i32 3} >!25 = !{i32 1, !"wchar_size", i32 4} >!26 = !{i32 7, !"PIC Level", i32 2} >!27 = !{i32 7, !"uwtable", i32 1} >!28 = !{i32 7, !"frame-pointer", i32 2} >!29 = !{!"clang version 14.0.6 (git@github.com:OpenCilk/opencilk-project.git 523da9eb198f8260fc59681674bd4cd1c7db48c9)"} >!30 = distinct !DISubprogram(name: "aws_checksums_crc32c_hw", scope: !21, file: !21, line: 297, type: !31, scopeLine: 297, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, retainedNodes: !43) >!31 = !DISubroutineType(types: !32) >!32 = !{!33, !37, !42, !33} >!33 = !DIDerivedType(tag: DW_TAG_typedef, name: "uint32_t", file: !34, line: 66, baseType: !35) >!34 = !DIFile(filename: "include/sys/_stdint.h", directory: "/usr") >!35 = !DIDerivedType(tag: DW_TAG_typedef, name: "__uint32_t", file: !36, line: 50, baseType: !7) >!36 = !DIFile(filename: "include/sys/_types.h", directory: "/usr") >!37 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !38, size: 64) >!38 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !39) >!39 = !DIDerivedType(tag: DW_TAG_typedef, name: "uint8_t", file: !34, line: 56, baseType: !40) >!40 = !DIDerivedType(tag: DW_TAG_typedef, name: "__uint8_t", file: !36, line: 46, baseType: !41) >!41 = !DIBasicType(name: "unsigned char", size: 8, encoding: DW_ATE_unsigned_char) >!42 = !DIBasicType(name: "int", size: 32, encoding: DW_ATE_signed) >!43 = !{!44, !45, !46, !47, !48, !49} >!44 = !DILocalVariable(name: "input", arg: 1, scope: !30, file: !21, line: 297, type: !37) >!45 = !DILocalVariable(name: "length", arg: 2, scope: !30, file: !21, line: 297, type: !42) >!46 = !DILocalVariable(name: "previousCrc32", arg: 3, scope: !30, file: !21, line: 297, type: !33) >!47 = !DILocalVariable(name: "crc", scope: !30, file: !21, line: 307, type: !33) >!48 = !DILocalVariable(name: "input_alignment", scope: !30, file: !21, line: 319, type: !42) >!49 = !DILocalVariable(name: "leading", scope: !30, file: !21, line: 322, type: !42) >!50 = !DILocation(line: 0, scope: !30) >!51 = !DILocation(line: 299, column: 9, scope: !52) >!52 = distinct !DILexicalBlock(scope: !30, file: !21, line: 299, column: 9) >!53 = !DILocation(line: 299, column: 9, scope: !30) >!54 = !{!"branch_weights", i32 2000, i32 1} >!55 = !DILocation(line: 300, column: 26, scope: !56) >!56 = distinct !DILexicalBlock(scope: !52, file: !21, line: 299, column: 45) >!57 = !DILocation(line: 300, column: 24, scope: !56) >!58 = !DILocation(line: 304, column: 29, scope: !56) >!59 = !DILocation(line: 305, column: 5, scope: !56) >!60 = !DILocation(line: 307, column: 20, scope: !30) >!61 = !DILocation(line: 310, column: 9, scope: !62) >!62 = distinct !DILexicalBlock(scope: !30, file: !21, line: 310, column: 9) >!63 = !DILocation(line: 310, column: 9, scope: !30) >!64 = !{!"branch_weights", i32 1, i32 2000} >!65 = !DILocation(line: 311, column: 25, scope: !66) >!66 = distinct !DILexicalBlock(scope: !62, file: !21, line: 310, column: 35) >!67 = !DILocation(line: 311, column: 9, scope: !66) >!68 = !DILocation(line: 311, column: 22, scope: !66) >!69 = !DILocation(line: 312, column: 13, scope: !70) >!70 = distinct !DILexicalBlock(scope: !66, file: !21, line: 311, column: 30) >!71 = !{i64 272722} >!72 = !DILocation(line: 313, column: 18, scope: !70) >!73 = distinct !{!73, !67, !74} >!74 = !DILocation(line: 314, column: 9, scope: !66) >!75 = !DILocation(line: 319, column: 27, scope: !30) >!76 = !DILocation(line: 322, column: 22, scope: !30) >!77 = !DILocation(line: 322, column: 41, scope: !30) >!78 = !DILocation(line: 325, column: 12, scope: !30) >!79 = !DILocation(line: 328, column: 22, scope: !30) >!80 = !DILocation(line: 328, column: 5, scope: !30) >!81 = !DILocation(line: 328, column: 19, scope: !30) >!82 = !DILocation(line: 329, column: 9, scope: !83) >!83 = distinct !DILexicalBlock(scope: !30, file: !21, line: 328, column: 27) >!84 = !{i64 273426} >!85 = !DILocation(line: 330, column: 14, scope: !83) >!86 = distinct !{!86, !80, !87} >!87 = !DILocation(line: 331, column: 5, scope: !30) >!88 = !DILocation(line: 334, column: 9, scope: !89) >!89 = distinct !DILexicalBlock(scope: !30, file: !21, line: 334, column: 9) >!90 = !{i8 0, i8 2} >!91 = !DILocation(line: 334, column: 9, scope: !30) >!92 = !DILocation(line: 336, column: 16, scope: !93) >!93 = distinct !DILexicalBlock(scope: !89, file: !21, line: 334, column: 37) >!94 = !DILocation(line: 336, column: 9, scope: !93) >!95 = !DILocation(line: 215, column: 5, scope: !96, inlinedAt: !102) >!96 = distinct !DISubprogram(name: "s_crc32c_sse42_clmul_3072", scope: !21, file: !21, line: 214, type: !97, scopeLine: 214, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, retainedNodes: !99) >!97 = !DISubroutineType(types: !98) >!98 = !{!33, !37, !33} >!99 = !{!100, !101} >!100 = !DILocalVariable(name: "input", arg: 1, scope: !96, file: !21, line: 214, type: !37) >!101 = !DILocalVariable(name: "crc", arg: 2, scope: !96, file: !21, line: 214, type: !33) >!102 = distinct !DILocation(line: 338, column: 19, scope: !103) >!103 = distinct !DILexicalBlock(scope: !93, file: !21, line: 336, column: 44) >!104 = !DILocation(line: 342, column: 16, scope: !93) >!105 = !DILocation(line: 342, column: 9, scope: !93) >!106 = !DILocation(line: 0, scope: !96, inlinedAt: !102) >!107 = !{i64 268663, i64 268775, i64 268861, i64 268965, i64 269034, i64 269078, i64 269123, i64 269181, i64 269239, i64 269298, i64 269356, i64 269414, i64 269473, i64 269531, i64 269589, i64 269648, i64 269706, i64 269764, i64 269823, i64 269881, i64 269939, i64 269998, i64 270056, i64 270114, i64 270173, i64 270231, i64 270289, i64 270348, i64 270406, i64 270464, i64 270523, i64 270567, i64 270611, i64 2147786777, i64 2147786898, i64 2147787019, i64 2147787140, i64 2147787261, i64 2147787382, i64 2147787503, i64 2147787624, i64 2147787745, i64 2147787866, i64 2147787987, i64 2147788108, i64 2147788229, i64 2147788350, i64 2147788471, i64 2147788592, i64 2147788713} >!108 = !DILocation(line: 339, column: 19, scope: !103) >!109 = !DILocation(line: 340, column: 20, scope: !103) >!110 = distinct !{!110, !94, !111} >!111 = !DILocation(line: 341, column: 9, scope: !93) >!112 = !DILocation(line: 127, column: 5, scope: !113, inlinedAt: !117) >!113 = distinct !DISubprogram(name: "s_crc32c_sse42_clmul_1024", scope: !21, file: !21, line: 126, type: !97, scopeLine: 126, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, retainedNodes: !114) >!114 = !{!115, !116} >!115 = !DILocalVariable(name: "input", arg: 1, scope: !113, file: !21, line: 126, type: !37) >!116 = !DILocalVariable(name: "crc", arg: 2, scope: !113, file: !21, line: 126, type: !33) >!117 = distinct !DILocation(line: 344, column: 19, scope: !118) >!118 = distinct !DILexicalBlock(scope: !93, file: !21, line: 342, column: 44) >!119 = !DILocation(line: 348, column: 16, scope: !93) >!120 = !DILocation(line: 348, column: 9, scope: !93) >!121 = !DILocation(line: 0, scope: !113, inlinedAt: !117) >!122 = !{i64 264945, i64 265057, i64 265143, i64 265246, i64 265315, i64 265359, i64 265404, i64 265462, i64 265520, i64 265579, i64 265628, i64 265677, i64 265727, i64 265776, i64 265825, i64 265875, i64 265924, i64 265973, i64 266023, i64 266072, i64 266121, i64 266171, i64 266220, i64 266269, i64 266319, i64 266368, i64 266417, i64 266467, i64 266516, i64 266565, i64 266615, i64 266659, i64 266703, i64 266748, i64 266797, i64 266846, i64 266896, i64 266945, i64 266994, i64 267044, i64 267093, i64 2147784743, i64 2147784864, i64 2147784985, i64 2147785106, i64 2147785227, i64 2147785348, i64 2147785469, i64 2147785590, i64 2147785711, i64 2147785832, i64 2147785953, i64 2147786074, i64 2147786195, i64 2147786316, i64 2147786437, i64 2147786558, i64 2147786679} >!123 = !DILocation(line: 345, column: 19, scope: !118) >!124 = !DILocation(line: 346, column: 20, scope: !118) >!125 = distinct !{!125, !105, !126} >!126 = !DILocation(line: 347, column: 9, scope: !93) >!127 = !DILocalVariable(name: "input", arg: 1, scope: !128, file: !21, line: 54, type: !37) >!128 = distinct !DISubprogram(name: "s_crc32c_sse42_clmul_256", scope: !21, file: !21, line: 54, type: !97, scopeLine: 54, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagLocalToUnit | DISPFlagDefinition | DISPFlagOptimized, unit: !2, retainedNodes: !129) >!129 = !{!127, !130} >!130 = !DILocalVariable(name: "crc", arg: 2, scope: !128, file: !21, line: 54, type: !33) >!131 = !DILocation(line: 0, scope: !128, inlinedAt: !132) >!132 = distinct !DILocation(line: 350, column: 19, scope: !133) >!133 = distinct !DILexicalBlock(scope: !93, file: !21, line: 348, column: 43) >!134 = !DILocation(line: 55, column: 5, scope: !128, inlinedAt: !132) >!135 = !{i64 262066, i64 262177, i64 262263, i64 262312, i64 262361, i64 262411, i64 262460, i64 262509, i64 262559, i64 262608, i64 262657, i64 262707, i64 262756, i64 262805, i64 262855, i64 262904, i64 262953, i64 263003, i64 263052, i64 263101, i64 263151, i64 263200, i64 263249, i64 263299, i64 263348, i64 263397, i64 263447, i64 263496, i64 263545, i64 263595, i64 263644, i64 263693, i64 263743, i64 263792, i64 2147782710, i64 2147782831, i64 2147782952, i64 2147783073, i64 2147783194, i64 2147783315, i64 2147783436, i64 2147783557, i64 2147783678, i64 2147783799, i64 2147783920, i64 2147784041, i64 2147784162, i64 2147784283, i64 2147784404, i64 2147784525, i64 2147784646} >!136 = !DILocation(line: 351, column: 19, scope: !133) >!137 = !DILocation(line: 352, column: 20, scope: !133) >!138 = distinct !{!138, !120, !139} >!139 = !DILocation(line: 353, column: 9, scope: !93) >!140 = !DILocation(line: 307, column: 14, scope: !30) >!141 = !DILocation(line: 357, column: 12, scope: !30) >!142 = !DILocation(line: 357, column: 5, scope: !30) >!143 = !DILocation(line: 365, column: 21, scope: !30) >!144 = !DILocation(line: 365, column: 5, scope: !30) >!145 = !DILocation(line: 359, column: 9, scope: !146) >!146 = distinct !DILexicalBlock(scope: !30, file: !21, line: 357, column: 37) >!147 = !{i64 274603} >!148 = !DILocation(line: 360, column: 15, scope: !146) >!149 = !DILocation(line: 361, column: 16, scope: !146) >!150 = distinct !{!150, !142, !151} >!151 = !DILocation(line: 362, column: 5, scope: !30) >!152 = !DILocation(line: 365, column: 18, scope: !30) >!153 = !DILocation(line: 366, column: 9, scope: !154) >!154 = distinct !DILexicalBlock(scope: !30, file: !21, line: 365, column: 26) >!155 = !{i64 274890} >!156 = !DILocation(line: 369, column: 14, scope: !154) >!157 = distinct !{!157, !144, !158} >!158 = !DILocation(line: 370, column: 5, scope: !30) >!159 = !DILocation(line: 373, column: 1, scope: !30) >!160 = !DISubprogram(name: "aws_cpu_has_feature", scope: !6, file: !6, line: 24, type: !161, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized, retainedNodes: !163) >!161 = !DISubroutineType(types: !162) >!162 = !{!22, !5} >!163 = !{} >!164 = distinct !DISubprogram(name: "aws_checksums_crc32_hw", scope: !21, file: !21, line: 374, type: !31, scopeLine: 374, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: !2, retainedNodes: !165) >!165 = !{!166, !167, !168} >!166 = !DILocalVariable(name: "input", arg: 1, scope: !164, file: !21, line: 374, type: !37) >!167 = !DILocalVariable(name: "length", arg: 2, scope: !164, file: !21, line: 374, type: !42) >!168 = !DILocalVariable(name: "previousCrc32", arg: 3, scope: !164, file: !21, line: 374, type: !33) >!169 = !DILocation(line: 0, scope: !164) >!170 = !DILocation(line: 375, column: 12, scope: !164) >!171 = !DILocation(line: 375, column: 5, scope: !164) >!172 = !DISubprogram(name: "aws_checksums_crc32_sw", scope: !173, file: !173, line: 18, type: !31, flags: DIFlagPrototyped, spFlags: DISPFlagOptimized, retainedNodes: !163) >!173 = !DIFile(filename: "crt/aws-checksums/include/aws/checksums/private/crc_priv.h", directory: "/usr/ports/devel/py-awscrt/work-py39/awscrt-0.13.14")
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 265756
:
235946
|
235947
|
235950