| /kernel/linux/linux-5.10/arch/ia64/lib/ |
| D | clear_user.S | 1 /* SPDX-License-Identifier: GPL-2.0 */ 11 * Copyright (C) 1998, 1999, 2001 Hewlett-Packard Co 37 // - we check whether or not the buffer is small, i.e., less than 17 40 // - Otherwise we go progressively from 1 byte store to 8byte store in 65 adds tmp=-1,len // br.ctop is repeat/until 83 adds len=-1,len // countdown length using len 88 // len contains bytes left 99 // The use of len/len2 for countdown of the number of bytes left 106 EX( .Lexit3, (p6) st1 [buf]=r0,1 ) // 1-byte aligned 107 (p6) adds len=-1,len;; // sync because buf is modified [all …]
|
| D | memset.S | 1 /* SPDX-License-Identifier: GPL-2.0 */ 4 Copyright (c) 2002 Hewlett-Packard Co/CERN 15 we get to a 16B-aligned address, then loop on 128 B chunks using an 42 // This routine uses only scratch predicate registers (p6 - p15) 43 #define p_scr p6 // default register for same-cycle branches 72 and ptr2 = -(MIN1+1), dest // aligned address 93 (p_y) add cnt = -8, cnt // 96 (p_y) st8 [ptr2] = value,-4 // 100 (p_yy) add cnt = -4, cnt // 103 (p_yy) st4 [ptr2] = value,-2 // [all …]
|
| D | memcpy.S | 1 /* SPDX-License-Identifier: GPL-2.0 */ 13 * Copyright (C) 2000-2001 Hewlett-Packard Co 15 * David Mosberger-Tang <davidm@hpl.hp.com> 69 shr.u cnt=in2,3 // number of 8-byte words to copy 73 adds cnt=-1,cnt // br.ctop is repeat/until 103 (p[N-1])st8 [dst]=val[N-1],8 109 mov pr=saved_pr,-1 114 * Small (<16 bytes) unaligned copying is done via a simple byte-at-the-time 117 * issues, we want to avoid read-modify-write of entire words. 121 adds cnt=-1,in2 // br.ctop is repeat/until [all …]
|
| D | copy_user.S | 1 /* SPDX-License-Identifier: GPL-2.0 */ 23 * Copyright (C) 2000-2001 Hewlett-Packard Co 27 * - handle the case where we have more than 16 bytes and the alignment 29 * - more benchmarking 30 * - fix extraneous stop bit introduced by the EX() macro. 42 #define EPI p[PIPE_DEPTH-1] 57 #define lshift r15 // left shift in bits 83 adds len2=-1,len // br.ctop is repeat/until 116 EX(.failure_out,(EPI) st1 [dst1]=val1[PIPE_DEPTH-1],1) 125 // Not 8-byte aligned [all …]
|
| /kernel/linux/linux-6.6/arch/ia64/lib/ |
| D | clear_user.S | 1 /* SPDX-License-Identifier: GPL-2.0 */ 11 * Copyright (C) 1998, 1999, 2001 Hewlett-Packard Co 37 // - we check whether or not the buffer is small, i.e., less than 17 40 // - Otherwise we go progressively from 1 byte store to 8byte store in 65 adds tmp=-1,len // br.ctop is repeat/until 83 adds len=-1,len // countdown length using len 88 // len contains bytes left 99 // The use of len/len2 for countdown of the number of bytes left 106 EX( .Lexit3, (p6) st1 [buf]=r0,1 ) // 1-byte aligned 107 (p6) adds len=-1,len;; // sync because buf is modified [all …]
|
| D | memset.S | 1 /* SPDX-License-Identifier: GPL-2.0 */ 4 Copyright (c) 2002 Hewlett-Packard Co/CERN 15 we get to a 16B-aligned address, then loop on 128 B chunks using an 42 // This routine uses only scratch predicate registers (p6 - p15) 43 #define p_scr p6 // default register for same-cycle branches 72 and ptr2 = -(MIN1+1), dest // aligned address 93 (p_y) add cnt = -8, cnt // 96 (p_y) st8 [ptr2] = value,-4 // 100 (p_yy) add cnt = -4, cnt // 103 (p_yy) st4 [ptr2] = value,-2 // [all …]
|
| D | memcpy.S | 1 /* SPDX-License-Identifier: GPL-2.0 */ 13 * Copyright (C) 2000-2001 Hewlett-Packard Co 15 * David Mosberger-Tang <davidm@hpl.hp.com> 69 shr.u cnt=in2,3 // number of 8-byte words to copy 73 adds cnt=-1,cnt // br.ctop is repeat/until 103 (p[N-1])st8 [dst]=val[N-1],8 109 mov pr=saved_pr,-1 114 * Small (<16 bytes) unaligned copying is done via a simple byte-at-the-time 117 * issues, we want to avoid read-modify-write of entire words. 121 adds cnt=-1,in2 // br.ctop is repeat/until [all …]
|
| D | copy_user.S | 1 /* SPDX-License-Identifier: GPL-2.0 */ 23 * Copyright (C) 2000-2001 Hewlett-Packard Co 27 * - handle the case where we have more than 16 bytes and the alignment 29 * - more benchmarking 30 * - fix extraneous stop bit introduced by the EX() macro. 42 #define EPI p[PIPE_DEPTH-1] 57 #define lshift r15 // left shift in bits 83 adds len2=-1,len // br.ctop is repeat/until 116 EX(.failure_out,(EPI) st1 [dst1]=val1[PIPE_DEPTH-1],1) 125 // Not 8-byte aligned [all …]
|
| /kernel/linux/linux-6.6/arch/alpha/lib/ |
| D | ev6-clear_user.S | 1 /* SPDX-License-Identifier: GPL-2.0 */ 3 * arch/alpha/lib/ev6-clear_user.S 4 * 21264 version contributed by Rick Gorton <rick.gorton@alpha-processor.com> 8 * We have to make sure that $0 is always up-to-date and contains the 9 * right "bytes left to zero" value (and that it is updated only _after_ 16 * ftp.digital.com/pub/Digital/info/semiconductor/literature/dsc-library.html 18 * E - either cluster 19 * U - upper subcluster; U0 - subcluster U0; U1 - subcluster U1 20 * L - lower subcluster; L0 - subcluster L0; L1 - subcluster L1 25 * it's going to be worth the effort to hand-unroll a big loop, and use wh64. [all …]
|
| D | ev6-memset.S | 1 /* SPDX-License-Identifier: GPL-2.0 */ 3 * arch/alpha/lib/ev6-memset.S 8 * 21264 version contributed by Rick Gorton <rick.gorton@alpha-processor.com> 13 * ftp.digital.com/pub/Digital/info/semiconductor/literature/dsc-library.html 15 * E - either cluster 16 * U - upper subcluster; U0 - subcluster U0; U1 - subcluster U1 17 * L - lower subcluster; L0 - subcluster L0; L1 - subcluster L1 48 * undertake a major re-write to interleave the constant materialization 49 * with other parts of the fall-through code. This is important, even 88 subq $16,$3,$16 # E : $16 is new aligned destination [all …]
|
| /kernel/linux/linux-5.10/arch/alpha/lib/ |
| D | ev6-clear_user.S | 1 /* SPDX-License-Identifier: GPL-2.0 */ 3 * arch/alpha/lib/ev6-clear_user.S 4 * 21264 version contributed by Rick Gorton <rick.gorton@alpha-processor.com> 8 * We have to make sure that $0 is always up-to-date and contains the 9 * right "bytes left to zero" value (and that it is updated only _after_ 16 * ftp.digital.com/pub/Digital/info/semiconductor/literature/dsc-library.html 18 * E - either cluster 19 * U - upper subcluster; U0 - subcluster U0; U1 - subcluster U1 20 * L - lower subcluster; L0 - subcluster L0; L1 - subcluster L1 25 * it's going to be worth the effort to hand-unroll a big loop, and use wh64. [all …]
|
| D | ev6-memset.S | 1 /* SPDX-License-Identifier: GPL-2.0 */ 3 * arch/alpha/lib/ev6-memset.S 8 * 21264 version contributed by Rick Gorton <rick.gorton@alpha-processor.com> 13 * ftp.digital.com/pub/Digital/info/semiconductor/literature/dsc-library.html 15 * E - either cluster 16 * U - upper subcluster; U0 - subcluster U0; U1 - subcluster U1 17 * L - lower subcluster; L0 - subcluster L0; L1 - subcluster L1 48 * undertake a major re-write to interleave the constant materialization 49 * with other parts of the fall-through code. This is important, even 88 subq $16,$3,$16 # E : $16 is new aligned destination [all …]
|
| /kernel/linux/linux-6.6/include/linux/ |
| D | regset.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 3 * User-mode machine state access 22 size_t left; member 27 if (s->left) { in membuf_zero() 28 if (size > s->left) in membuf_zero() 29 size = s->left; in membuf_zero() 30 memset(s->p, 0, size); in membuf_zero() 31 s->p += size; in membuf_zero() 32 s->left -= size; in membuf_zero() 34 return s->left; in membuf_zero() [all …]
|
| /kernel/linux/linux-5.10/include/linux/ |
| D | regset.h | 1 /* SPDX-License-Identifier: GPL-2.0-only */ 3 * User-mode machine state access 22 size_t left; member 27 if (s->left) { in membuf_zero() 28 if (size > s->left) in membuf_zero() 29 size = s->left; in membuf_zero() 30 memset(s->p, 0, size); in membuf_zero() 31 s->p += size; in membuf_zero() 32 s->left -= size; in membuf_zero() 34 return s->left; in membuf_zero() [all …]
|
| /kernel/linux/linux-6.6/Documentation/input/ |
| D | gamepad.rst | 1 --------------------------- 3 --------------------------- 11 having user-space deal with different button-mappings for each gamepad, this 25 | <===DP===> |SE| |ST| (W) -|- (E) | | 35 D-Pad Left Right Action Pad 43 - Action-Pad 44 4 buttons in diamonds-shape (on the right side). The buttons are 47 - D-Pad (Direction-pad) 48 4 buttons (on the left side) that point up, down, left and right. 49 - Menu-Pad [all …]
|
| /kernel/linux/linux-5.10/Documentation/input/ |
| D | gamepad.rst | 1 --------------------------- 3 --------------------------- 11 having user-space deal with different button-mappings for each gamepad, this 25 | <===DP===> |SE| |ST| (W) -|- (E) | | 35 D-Pad Left Right Action Pad 43 - Action-Pad 44 4 buttons in diamonds-shape (on the right side). The buttons are 47 - D-Pad (Direction-pad) 48 4 buttons (on the left side) that point up, down, left and right. 49 - Menu-Pad [all …]
|
| /kernel/linux/linux-5.10/arch/sparc/lib/ |
| D | M7memcpy.S | 15 * Fast assembler language version of the following C-program for memcpy 16 * which represents the `standard' for the C-library. 26 * } while (--n != 0); 37 * if src & dst aligned on word boundary but not long word boundary, 39 * if src & dst aligned on long word boundary 41 * if src & dst not aligned and length <= SHORTCHECK (SHORTCHECK=14) 59 * finish_long: src/dst aligned on 8 bytes 60 * copy with ldx/stx in 8-way unrolled loop; 61 * copy final 0-63 bytes; exit with dst addr 62 * } else { src/dst aligned; count > MED_MAX [all …]
|
| /kernel/linux/linux-6.6/arch/sparc/lib/ |
| D | M7memcpy.S | 15 * Fast assembler language version of the following C-program for memcpy 16 * which represents the `standard' for the C-library. 26 * } while (--n != 0); 37 * if src & dst aligned on word boundary but not long word boundary, 39 * if src & dst aligned on long word boundary 41 * if src & dst not aligned and length <= SHORTCHECK (SHORTCHECK=14) 59 * finish_long: src/dst aligned on 8 bytes 60 * copy with ldx/stx in 8-way unrolled loop; 61 * copy final 0-63 bytes; exit with dst addr 62 * } else { src/dst aligned; count > MED_MAX [all …]
|
| /kernel/linux/linux-5.10/drivers/video/fbdev/core/ |
| D | sysfillrect.c | 21 * Aligned pattern fill using 32/64-bit memory accesses 48 n -= bits - dst_idx; in bitfill_aligned() 62 n -= 8; in bitfill_aligned() 64 while (n--) in bitfill_aligned() 74 * Unaligned generic pattern fill using 32/64-bit memory accesses 75 * The pattern must have been expanded to a full 32/64-bit value 76 * Left/right are the appropriate shifts to convert to the pattern to be 77 * used for the next 32/64-bit word 82 unsigned long pat, int left, int right, unsigned n, int bits) in bitfill_unaligned() argument 103 pat = pat << left | pat >> right; in bitfill_unaligned() [all …]
|
| D | cfbfillrect.c | 4 * Copyright (C) 2000 James Simmons (jsimmons@linux-fbdev.org) 31 * Aligned pattern fill using 32/64-bit memory accesses 58 n -= bits - dst_idx; in bitfill_aligned() 72 n -= 8; in bitfill_aligned() 74 while (n--) in bitfill_aligned() 85 * Unaligned generic pattern fill using 32/64-bit memory accesses 86 * The pattern must have been expanded to a full 32/64-bit value 87 * Left/right are the appropriate shifts to convert to the pattern to be 88 * used for the next 32/64-bit word 93 unsigned long pat, int left, int right, unsigned n, int bits) in bitfill_unaligned() argument [all …]
|
| /kernel/linux/linux-6.6/drivers/video/fbdev/core/ |
| D | sysfillrect.c | 21 * Aligned pattern fill using 32/64-bit memory accesses 48 n -= bits - dst_idx; in bitfill_aligned() 64 * Unaligned generic pattern fill using 32/64-bit memory accesses 65 * The pattern must have been expanded to a full 32/64-bit value 66 * Left/right are the appropriate shifts to convert to the pattern to be 67 * used for the next 32/64-bit word 72 unsigned long pat, int left, int right, unsigned n, int bits) in bitfill_unaligned() argument 93 pat = pat << left | pat >> right; in bitfill_unaligned() 94 n -= bits - dst_idx; in bitfill_unaligned() 101 pat = pat << left | pat >> right; in bitfill_unaligned() [all …]
|
| D | cfbfillrect.c | 4 * Copyright (C) 2000 James Simmons (jsimmons@linux-fbdev.org) 31 * Aligned pattern fill using 32/64-bit memory accesses 58 n -= bits - dst_idx; in bitfill_aligned() 72 n -= 8; in bitfill_aligned() 74 while (n--) in bitfill_aligned() 85 * Unaligned generic pattern fill using 32/64-bit memory accesses 86 * The pattern must have been expanded to a full 32/64-bit value 87 * Left/right are the appropriate shifts to convert to the pattern to be 88 * used for the next 32/64-bit word 93 unsigned long pat, int left, int right, unsigned n, int bits) in bitfill_unaligned() argument [all …]
|
| /kernel/linux/linux-6.6/drivers/infiniband/hw/hfi1/ |
| D | pio_copy.c | 1 // SPDX-License-Identifier: GPL-2.0 or BSD-3-Clause 8 /* additive distance between non-SOP and SOP space */ 10 #define PIO_BLOCK_MASK (PIO_BLOCK_SIZE - 1) 15 * pio_copy - copy data block to MMIO space 19 * @from: source, must be 8 byte aligned 20 * @count: number of DWORD (32-bit) quantities to copy from source 27 * o pbuf->start always starts on a block boundary 33 void __iomem *dest = pbuf->start + SOP_DISTANCE; in pio_copy() 35 void __iomem *dend; /* 8-byte data end */ in pio_copy() 41 /* calculate where the QWORD data ends - in SOP=1 space */ in pio_copy() [all …]
|
| /kernel/linux/linux-5.10/drivers/infiniband/hw/hfi1/ |
| D | pio_copy.c | 24 * - Redistributions of source code must retain the above copyright 26 * - Redistributions in binary form must reproduce the above copyright 30 * - Neither the name of Intel Corporation nor the names of its 50 /* additive distance between non-SOP and SOP space */ 52 #define PIO_BLOCK_MASK (PIO_BLOCK_SIZE - 1) 57 * pio_copy - copy data block to MMIO space 60 * @from: source, must be 8 byte aligned 61 * @count: number of DWORD (32-bit) quantities to copy from source 68 * o pbuf->start always starts on a block boundary 74 void __iomem *dest = pbuf->start + SOP_DISTANCE; in pio_copy() [all …]
|
| /kernel/linux/linux-5.10/Documentation/sparc/oradax/ |
| D | dax-hv-api.txt | 3 Publication date 2017-09-25 08:21 5 Extracted via "pdftotext -f 547 -l 572 -layout sun4v_20170925.pdf" 16 live-migration and other system management activities. 20 …high speed processoring of database-centric operations. The coprocessors may support one or more of 28 …e Completion Area and, unless execution order is specifically restricted through the use of serial- 45 …device node in the guest MD (Section 8.24.17, “Database Analytics Accelerators (DAX) virtual-device 51 36.1.1.1. "ORCL,sun4v-dax" Device Compatibility 54 • No-op/Sync 81 36.1.1.2. "ORCL,sun4v-dax-fc" Device Compatibility 82 … "ORCL,sun4v-dax-fc" is compatible with the "ORCL,sun4v-dax" interface, and includes additional CCB [all …]
|