tools/perf/arch/x86/tests/insn-x86-dat-src.c
Source file repositories/reference/linux-study-clean/tools/perf/arch/x86/tests/insn-x86-dat-src.c
File Facts
- System
- Linux kernel
- Corpus path
tools/perf/arch/x86/tests/insn-x86-dat-src.c- Extension
.c- Size
- 216930 bytes
- Lines
- 5480
- Domain
- Support Tooling And Documentation
- Bucket
- tools
- Inferred role
- Support Tooling And Documentation: implementation source
- Status
- source implementation candidate
Why This File Exists
Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.
- Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.
Dependency Surface
- No C-style include directives detected by the generator.
Detected Declarations
function mainfunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatilefunction volatile
Annotated Snippet
asm volatile("vpscatterdd %zmm28,0x7b(%rbp,%zmm29,8){%k1}");
asm volatile("vpscatterdq %zmm26,0x7b(%rbp,%ymm27,8){%k1}");
/* AVX-512: Op code 0f 38 a1 */
asm volatile("vpscatterqd %ymm6,0x7b(%rbp,%zmm29,8){%k1}");
asm volatile("vpscatterqq %ymm6,0x7b(%rbp,%ymm27,8){%k1}");
/* AVX-512: Op code 0f 38 a2 */
asm volatile("vscatterdps %zmm28,0x7b(%rbp,%zmm29,8){%k1}");
asm volatile("vscatterdpd %zmm28,0x7b(%rbp,%ymm27,8){%k1}");
/* AVX-512: Op code 0f 38 a3 */
asm volatile("vscatterqps %ymm6,0x7b(%rbp,%zmm29,8){%k1}");
asm volatile("vscatterqpd %zmm28,0x7b(%rbp,%zmm29,8){%k1}");
/* AVX-512: Op code 0f 38 aa */
asm volatile("vfmsub213ps %xmm1, %xmm2, %xmm3");
asm volatile("vfmsub213ps %ymm1, %ymm2, %ymm3");
asm volatile("vfmsub213ps %zmm1, %zmm2, %zmm3");
asm volatile("vfmsub213ps 0x12345678(%rax,%rcx,8),%zmm2,%zmm3");
asm volatile("vfmsub213ps 0x12345678(%eax,%ecx,8),%zmm2,%zmm3");
asm volatile("vfmsub213pd %xmm1, %xmm2, %xmm3");
asm volatile("vfmsub213pd %ymm1, %ymm2, %ymm3");
asm volatile("vfmsub213pd %zmm1, %zmm2, %zmm3");
asm volatile("vfmsub213pd 0x12345678(%rax,%rcx,8),%zmm2,%zmm3");
asm volatile("vfmsub213pd 0x12345678(%eax,%ecx,8),%zmm2,%zmm3");
asm volatile("v4fnmaddps (%rax), %zmm0, %zmm4");
asm volatile("v4fnmaddps (%eax), %zmm0, %zmm4");
asm volatile("v4fnmaddps 0x12345678(%rax,%rcx,8),%zmm0,%zmm4");
asm volatile("v4fnmaddps 0x12345678(%eax,%ecx,8),%zmm0,%zmm4");
/* AVX-512: Op code 0f 38 ab */
asm volatile("vfmsub213ss %xmm1, %xmm2, %xmm3");
asm volatile("vfmsub213ss 0x12345678(%rax,%rcx,8),%xmm2,%xmm3");
asm volatile("vfmsub213ss 0x12345678(%eax,%ecx,8),%xmm2,%xmm3");
asm volatile("vfmsub213sd %xmm1, %xmm2, %xmm3");
asm volatile("vfmsub213sd 0x12345678(%rax,%rcx,8),%xmm2,%xmm3");
asm volatile("vfmsub213sd 0x12345678(%eax,%ecx,8),%xmm2,%xmm3");
asm volatile("v4fnmaddss (%rax), %xmm0, %xmm4");
asm volatile("v4fnmaddss (%eax), %xmm0, %xmm4");
asm volatile("v4fnmaddss 0x12345678(%rax,%rcx,8),%xmm0,%xmm4");
asm volatile("v4fnmaddss 0x12345678(%eax,%ecx,8),%xmm0,%xmm4");
/* AVX-512: Op code 0f 38 b4 */
asm volatile("vpmadd52luq %zmm26,%zmm27,%zmm28");
/* AVX-512: Op code 0f 38 b5 */
asm volatile("vpmadd52huq %zmm26,%zmm27,%zmm28");
/* AVX-512: Op code 0f 38 c4 */
asm volatile("vpconflictd %zmm26,%zmm27");
asm volatile("vpconflictq %zmm26,%zmm27");
/* AVX-512: Op code 0f 38 c8 */
asm volatile("vexp2ps %zmm29,%zmm30");
asm volatile("vexp2pd %zmm26,%zmm27");
/* AVX-512: Op code 0f 38 ca */
asm volatile("vrcp28ps %zmm29,%zmm30");
asm volatile("vrcp28pd %zmm26,%zmm27");
/* AVX-512: Op code 0f 38 cb */
asm volatile("vrcp28ss %xmm28,%xmm29,%xmm30{%k7}");
asm volatile("vrcp28sd %xmm25,%xmm26,%xmm27{%k7}");
/* AVX-512: Op code 0f 38 cc */
asm volatile("vrsqrt28ps %zmm29,%zmm30");
asm volatile("vrsqrt28pd %zmm26,%zmm27");
/* AVX-512: Op code 0f 38 cd */
asm volatile("vrsqrt28ss %xmm28,%xmm29,%xmm30{%k7}");
asm volatile("vrsqrt28sd %xmm25,%xmm26,%xmm27{%k7}");
Annotation
- Detected declarations: `function main`, `function volatile`, `function volatile`, `function volatile`, `function volatile`, `function volatile`, `function volatile`, `function volatile`, `function volatile`, `function volatile`.
- Atlas domain: Support Tooling And Documentation / tools.
- Implementation status: source implementation candidate.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.