Displaying 13 results from an estimated 13 matches for "cdq".
Did you mean:
cd
2019 Mar 04
2
Where's the optimiser gone (part 11): use the proper instruction for sign extension
...version of this function is quite
OK, the code for the "long long" version misses an obvious optimisation:
lsign: # @lsign
mov eax, dword ptr [esp + 4] | mov eax, dword ptr [esp + 4]
xor ecx, ecx |
test eax, eax | cdq
setg cl | neg eax
sar eax, 31 | adc edx, edx
add eax, ecx | mov eax, edx
ret | ret
llsign: # @llsign
xor ecx, ecx | xor...
2012 Mar 27
1
[LLVMdev] Compiling integer mod
For the simple C program below I show the output of clang and the
output of the VS compiler (I am on windows). Maybe this is obvious to
you, but is it really faster to do 2 multiplications, 3 movl
instructions, 2 shifts, 1 add, and 1 substract than to do 1 mov, 1
cdq, and 1 idiv?
I run into this while trying to understand why my code runs slower
with llvm than a comparable program on windows.
Thanks for any help,
Brent
int f(int n)
{
return (n + 1) % 18;
}
"clang -O2 -S" produces this code:
_f: # @f
# BB#0:...
2013 Oct 04
2
Again about encoding speed of different compiles
I downloaded current version of FLAC sources and compiled it with:
* GCC 4.8.1 (MSYS from http://xhmikosr.1f0.de/tools/)
* Intel C++ Composer XE 2013 update 5
* MSVS 2010 SP1
* MSVS 2012 update 3
(SSSE3 and SSE4.1 code was disabled for all compilers)
Stereo 24-bit WAV file was encoded with -8 preset.
Encoding time, in seconds:
GCC 32-bit: 209
ICC 32-bit: 130
VS10 32-bit: 116
VS12 32-bit: 114
2018 May 23
0
[PATCH v3 18/27] xen: Adapt assembly for PIE support
...it_thread_union+THREAD_SIZE, %_ASM_SP
#ifdef CONFIG_X86_64
/* Set up %gs.
@@ -46,7 +47,7 @@ ENTRY(startup_xen)
* init data section till per cpu areas are set up.
*/
movl $MSR_GS_BASE,%ecx
- movq $INIT_PER_CPU_VAR(irq_stack_union),%rax
+ movabsq $INIT_PER_CPU_VAR(irq_stack_union),%rax
cdq
wrmsr
#endif
diff --git a/arch/x86/xen/xen-pvh.S b/arch/x86/xen/xen-pvh.S
index e1a5fbeae08d..43e234c7c2de 100644
--- a/arch/x86/xen/xen-pvh.S
+++ b/arch/x86/xen/xen-pvh.S
@@ -101,8 +101,8 @@ ENTRY(pvh_start_xen)
call xen_prepare_pvh
/* startup_64 expects boot_params in %rsi. */
- mov $_pa...
2014 Jan 11
3
[LLVMdev] Possible error in docs.
http://llvm.org/docs/CodeGenerator.html#machine-code-description-classes
Section starting:
Fixed (preassigned) registers
It talks about converting:
define i32 @test(i32 %X, i32 %Y) {
%Z = udiv i32 %X, %Y
ret i32 %Z
}
into
;; X is in EAX, Y is in ECX
mov %EAX, %EDX
sar %EDX, 31
idiv %ECX
ret
BUT, where does the "sar" come from?
Kind Regards
James
2003 Nov 19
0
Windows Offline Folders
...uot;B @9V5T7V-U<G)E;G1?9W)O=7!S.B!U<V5R(&ES(&EN(#$@9W)O
M=7!S.B Y.0I;,C P,R\Q,2\Q.2 R,#HQ-#HP-"P@,UT@;&EB+W5T:6Q?<V5A
M8V-E<W,N8SIS95]A8V-E<W-?8VAE8VLH,C8Y*0H@('-E7V%C8V5S<U]C:&5C
M:SH@=7-E<B!S:60@:7,@4RTQ+34M,C$M,3,Q-#$X,#<W.2TR,SDX.3$X,S<V
M+3(Y-CDQ,C4X-3$M,3$Y. I;,C P,R\Q,2\Q.2 R,#HQ-#HP-"P@,UT@;&EB
M+W5T:6Q?<V5A8V-E<W,N8SIS95]A8V-E<W-?8VAE8VLH,C<S*0H@('-E7V%C
M8V5S<U]C:&5C:SH@86QS;R!3+3$M-2TR,2TQ,S$T,3@P-S<Y+3(S.3@Y,3@S
M-S8M,CDV.3$R-3@U,2TQ,3DY"ELR,# S+S$Q+S$Y(#(P.C$T.C T+" S72!L
M:6(O=71I;%]S96%...
2007 Oct 02
3
Logwatch for postfix
On CentOS5 with the latest updates applied, the logwatch filter for
postfix returns way too many lines from the log. I get an "unmatched
entries" message and all messages that have gone through the system is
listed.
Here is an example:
8F930A8092: to=<morten at foo.bar>, orig_to=<morten at localhost>,
relay=local, delay=0.19, delays=0.06/0.01/0/0.12, dsn=2.0.0,
2006 Jun 26
0
[klibc 24/43] i386 support for klibc
...bit sar
+ */
+ .text
+ .align 4
+ .globl __ashrdi3
+ .type __ashrdi3, at function
+__ashrdi3:
+#ifndef _REGPARM
+ movl 4(%esp),%eax
+ movl 8(%esp),%edx
+ movb 12(%esp),%cl
+#endif
+ cmpb $32,%cl
+ jae 1f
+
+ shrdl %cl,%edx,%eax
+ sarl %cl,%edx
+ ret
+
+1:
+ sarl %cl,%edx
+ movl %edx,%eax
+ cdq
+ ret
+
+ .size __ashrdi3,.-__ashrdi3
diff --git a/usr/klibc/arch/i386/libgcc/__lshrdi3.S b/usr/klibc/arch/i386/libgcc/__lshrdi3.S
new file mode 100644
index 0000000..6a63c52
--- /dev/null
+++ b/usr/klibc/arch/i386/libgcc/__lshrdi3.S
@@ -0,0 +1,29 @@
+/*
+ * arch/i386/libgcc/__lshrdi3.S
+ *
+ * 64-...
2003 Jun 26
1
HELP
...&%R+7-U8G-C<FEP=', at +5=F;W)M
M870],B M5V)A9"UF=6YC=&EO;BUC87-T("!C;VYF=&5S="YC(#$^)C4*8V]N
M9FEG=7)E.B!);B!F=6YC=&EO;B!@;6%I;B<Z"F-O;F9I9W5R93HX,CDP.B!S
M=&]R86=E('-I>F4@;V8 at 8&AD='(G(&ES;B=T(&MN;W=N"F-O;F9I9W5R93HX
M,CDQ.B!W87)N:6YG.B!I;7!L:6-I="!D96-L87)A=&EO;B!O9B!F=6YC=&EO
M;B!@<V5N9&9I;&4G"F-O;F9I9W5R93HX,CDP.B!W87)N:6YG.B!U;G5S960@
M=F%R:6%B;&4 at 8&AD='(G"F-O;F9I9W5R93H at 9F%I;&5D('!R;V=R86T@=V%S
M. at HC;&EN92 X,C at R(")C;VYF:6=U<F4B"B-...
2018 Mar 13
32
[PATCH v2 00/27] x86: PIE support and option to extend KASLR randomization
Changes:
- patch v2:
- Adapt patch to work post KPTI and compiler changes
- Redo all performance testing with latest configs and compilers
- Simplify mov macro on PIE (MOVABS now)
- Reduce GOT footprint
- patch v1:
- Simplify ftrace implementation.
- Use gcc mstack-protector-guard-reg=%gs with PIE when possible.
- rfc v3:
- Use --emit-relocs instead of -pie to reduce
2018 Mar 13
32
[PATCH v2 00/27] x86: PIE support and option to extend KASLR randomization
Changes:
- patch v2:
- Adapt patch to work post KPTI and compiler changes
- Redo all performance testing with latest configs and compilers
- Simplify mov macro on PIE (MOVABS now)
- Reduce GOT footprint
- patch v1:
- Simplify ftrace implementation.
- Use gcc mstack-protector-guard-reg=%gs with PIE when possible.
- rfc v3:
- Use --emit-relocs instead of -pie to reduce
2018 May 23
33
[PATCH v3 00/27] x86: PIE support and option to extend KASLR randomization
Changes:
- patch v3:
- Update on message to describe longer term PIE goal.
- Minor change on ftrace if condition.
- Changed code using xchgq.
- patch v2:
- Adapt patch to work post KPTI and compiler changes
- Redo all performance testing with latest configs and compilers
- Simplify mov macro on PIE (MOVABS now)
- Reduce GOT footprint
- patch v1:
- Simplify ftrace
2006 Jun 28
35
[klibc 00/31] klibc as a historyless patchset (updated and reorganized)
I have updated the klibc patchset based on feedback received. In
particular, the patchset has been reorganized so as not to break
git-bisect.
Additionally, this updates the patch base to 2.6.17-git12
(d38b69689c349f35502b92e20dafb30c62d49d63) and klibc 1.4.8; the main
difference on the klibc side is removal of obsolete code.
This is also available as a git tree at: