File: amd.s

package info (click to toggle)
binutils-riscv64-unknown-elf 2.32.2019.08+dfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye, sid
  • size: 413,812 kB
  • sloc: ansic: 2,327,452; asm: 982,944; exp: 218,246; cpp: 147,855; makefile: 63,075; sh: 33,816; yacc: 27,082; lisp: 15,389; perl: 6,480; xml: 5,239; ada: 5,117; python: 4,996; pascal: 3,266; lex: 2,272; cs: 879; f90: 535; sed: 334; awk: 165; objc: 134; fortran: 43
file content (35 lines) | stat: -rw-r--r-- 704 bytes parent folder | download | duplicates (29)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#AMD 3DNow! instructions

.text
foo:
 prefetch	(%ebx)
 prefetchw	0x1000(,%esi,2)
 femms
 pavgusb	(%eax),%mm0
 pf2id		2(%eax),%mm1
 pfacc		0x100(%eax),%mm2
 pfadd		(%esi),%mm3
 pfcmpeq	2(%esi),%mm4
 pfcmpge	0x9090(%esi),%mm5
 pfcmpgt	(%ebp,%esi,2),%mm6
 pfmax		2(%ebp,%esi,2),%mm7
 pfmin		0x90909090(%ebp,%esi,2),%mm0
 pfmul		4,%mm1
 pfrcp		%cs:7(%ebx,%eax,8),%mm2
 pfrcpit1	%mm0,%mm3
 pfrcpit2	%mm1,%mm4
 pfrsqit1	%mm2,%mm5
 pfrsqrt	%mm3,%mm6
 pfsub		%mm4,%mm7
 pfsubr		%mm5,%mm0
 pi2fd		%mm6,%mm1
 pmulhrw	%mm7,%mm2

 syscall
 sysret

 rdtscp

# This is a 3DNow! instruction, with a prefix, that isn't quite right
# Everything's good bar the opcode suffix
.byte 0x2e, 0x0f, 0x0f, 0x54, 0xc3, 0x07, 0xc3