Home
last modified time | relevance | path

Searched refs:uops (Results 1 – 25 of 29) sorted by relevance

12

/openbsd/gnu/llvm/llvm/include/llvm/Target/
H A DTargetPfmCounters.td24 // The name of the ProcResource on which uops are issued. This is used by
37 // Processors can define how to measure uops by defining a UopsCounter.
39 // Processors can define how to measure issued uops by defining IssueCounters.
H A DTargetItinerary.td111 list<Bypass> bypasses = [], int uops = 1> {
113 int NumMicroOps = uops;
/openbsd/gnu/gcc/gcc/config/i386/
H A Dppro.md73 ;; two uops, and simple read-modify instructions also take two uops.
75 ;; Simple read-modify-write instructions have four uops. The rules for
79 ;; - an instruction with 1 to 4 uops can be decoded only by decoder 0
84 ;; The goal is to schedule such that we have a few-one-one uops sequence
102 ;; 3 uops per cycle is more realistic.
127 ;; reg-reg operation, 1 uop per load on port 2. and 2 uops per store
131 ;; For microcoded instructions we don't know how many uops are produced.
133 ;; we _do_ know is that they typically produce four or more uops, so
218 ;; decode to 2 uops or microcode. But this probably gives the best
743 ;; read-modify and register-memory instructions have 2 or three uops,
[all …]
/openbsd/gnu/llvm/llvm/lib/Target/AArch64/
H A DAArch64SchedKryo.td16 // uops. Now, the latency spreadsheet has information based on fragmented uops,
20 let IssueWidth = 5; // 5-wide issue for expanded uops
H A DAArch64SchedFalkor.td19 let IssueWidth = 8; // 8 uops are dispatched per cycle.
H A DAArch64SchedAmpere1.td17 // decoded into internal micro-ops (uops).
571 // across Unit A or B for both uops.
H A DAArch64SchedExynosM3.td20 let IssueWidth = 6; // Up to 6 uops per cycle.
H A DAArch64SchedExynosM4.td20 let IssueWidth = 6; // Up to 6 uops per cycle.
H A DAArch64SchedExynosM5.td20 let IssueWidth = 6; // Up to 6 uops per cycle.
/openbsd/gnu/llvm/llvm/lib/Target/ARM/
H A DARMScheduleA8.td154 [1, 1, 1, 1, 3], [], -1>, // dynamic uops
159 [2, 1, 1, 1, 3], [], -1>, // dynamic uops
165 [1, 2, 1, 1, 3], [], -1>, // dynamic uops
170 [1, 1, 3], [], -1>, // dynamic uops
176 [1, 1, 3], [], -1>, // dynamic uops
232 [], [], -1>, // dynamic uops
237 [2], [], -1>, // dynamic uops
399 [1, 1, 1, 2], [], -1>, // dynamic uops
407 [2, 1, 1, 1, 2], [], -1>, // dynamic uops
427 [1, 1, 1, 1], [], -1>, // dynamic uops
[all …]
H A DARMScheduleA9.td287 -1>, // dynamic uops
296 -1>, // dynamic uops
306 -1>, // dynamic uops
315 -1>, // dynamic uops
325 -1>, // dynamic uops
420 [], [], -1>, // dynamic uops
427 [2], [], -1>, // dynamic uops
725 [1, 1, 1, 1], [], -1>, // dynamic uops
735 [2, 1, 1, 1], [], -1>, // dynamic uops
763 [1, 1, 1, 1], [], -1>, // dynamic uops
[all …]
H A DARMSchedule.td194 class BranchWriteRes<int lat, int uops, list<ProcResourceKind> resl,
199 let NumMicroOps = !add(wr.NumMicroOps, uops);
/openbsd/gnu/llvm/llvm/docs/CommandGuide/
H A Dllvm-exegesis.rst47 $ llvm-exegesis -mode=uops -opcode-name=ADD64rr
83 To measure the latency/uops of a custom piece of code, you can specify the
88 $ echo "vzeroupper" | llvm-exegesis -mode=uops -snippets-file=-
119 Assuming you have a set of benchmarked instructions (either latency or uops) as
187 .. option:: -mode=[latency|uops|inverse_throughput|analysis]
271 File to read (`analysis` mode) or write (`latency`/`uops`/`inverse_throughput`
/openbsd/gnu/usr.bin/gcc/gcc/config/i386/
H A Dppro.md21 ;; Categorize how many uops an ia32 instruction evaluates to:
24 ;; few -- an instruction with 1 to 4 uops can be decoded only by
/openbsd/gnu/usr.bin/perl/pod/
H A Dperlcheat.pod36 named uops == != eq ne
/openbsd/gnu/llvm/llvm/lib/Target/X86/
H A DX86SchedSkylakeServer.td2111 let NumMicroOps = 5; // 2 uops perform multiple loads
2120 let NumMicroOps = 5; // 2 uops perform multiple loads
2130 let NumMicroOps = 5; // 2 uops perform multiple loads
2140 let NumMicroOps = 5; // 2 uops perform multiple loads
2168 let NumMicroOps = 5; // 2 uops perform multiple loads
2177 let NumMicroOps = 5; // 2 uops peform multiple loads
2187 let NumMicroOps = 5; // 2 uops perform multiple loads
2367 // echo 'pxor %mm0, %mm0' | /tmp/llvm-exegesis -mode=uops -snippets-file=-
2368 // echo 'vxorpd %xmm0, %xmm0, %xmm1' | /tmp/llvm-exegesis -mode=uops -snippets-file=-
H A DX86SchedIceLake.td2131 let NumMicroOps = 5; // 2 uops perform multiple loads
2140 let NumMicroOps = 5; // 2 uops perform multiple loads
2150 let NumMicroOps = 5; // 2 uops perform multiple loads
2160 let NumMicroOps = 5; // 2 uops perform multiple loads
2188 let NumMicroOps = 5; // 2 uops perform multiple loads
2197 let NumMicroOps = 5; // 2 uops peform multiple loads
2207 let NumMicroOps = 5; // 2 uops perform multiple loads
2387 // echo 'pxor %mm0, %mm0' | /tmp/llvm-exegesis -mode=uops -snippets-file=-
2388 // echo 'vxorpd %xmm0, %xmm0, %xmm1' | /tmp/llvm-exegesis -mode=uops -snippets-file=-
H A DX86SchedSkylakeClient.td1449 let NumMicroOps = 5; // 2 uops perform multiple loads
1458 let NumMicroOps = 5; // 2 uops peform multiple loads
1468 let NumMicroOps = 5; // 2 uops perform multiple loads
1603 // echo 'pxor %mm0, %mm0' | /tmp/llvm-exegesis -mode=uops -snippets-file=-
1604 // echo 'vxorpd %xmm0, %xmm0, %xmm1' | /tmp/llvm-exegesis -mode=uops -snippets-file=-
H A DX86SchedSandyBridge.td1145 // echo 'pxor %mm0, %mm0' | /tmp/llvm-exegesis -mode=uops -snippets-file=-
1146 // echo 'vxorpd %xmm0, %xmm0, %xmm1' | /tmp/llvm-exegesis -mode=uops -snippets-file=-
H A DX86ScheduleZnver1.td329 …esFpuPair<WriteFRnd, [ZnFPU3], 4, [1], 1, 7, 1>; // FIXME: Should folds require 1 extra uops?
330 …esFpuPair<WriteFRndY, [ZnFPU3], 4, [1], 1, 7, 1>; // FIXME: Should folds require 1 extra uops?
H A DX86SchedBroadwell.td1533 // echo 'pxor %mm0, %mm0' | /tmp/llvm-exegesis -mode=uops -snippets-file=-
1534 // echo 'vxorpd %xmm0, %xmm0, %xmm1' | /tmp/llvm-exegesis -mode=uops -snippets-file=-
H A DX86SchedHaswell.td1773 // echo 'pxor %mm0, %mm0' | /tmp/llvm-exegesis -mode=uops -snippets-file=-
1774 // echo 'vxorpd %xmm0, %xmm0, %xmm1' | /tmp/llvm-exegesis -mode=uops -snippets-file=-
/openbsd/gnu/llvm/llvm/lib/CodeGen/
H A DVLIWMachineScheduler.cpp365 unsigned uops = SchedModel->getNumMicroOps(SU->getInstr()); in checkHazard() local
366 if (IssueCount + uops > SchedModel->getIssueWidth()) in checkHazard()
H A DMachineScheduler.cpp2176 unsigned uops = SchedModel->getNumMicroOps(SU->getInstr()); in checkHazard() local
2177 if ((CurrMOps > 0) && (CurrMOps + uops > SchedModel->getIssueWidth())) { in checkHazard()
/openbsd/gnu/llvm/llvm/lib/Target/Mips/
H A DMipsScheduleP5600.td530 // These instructions are split across multiple uops (in different pipelines)

12