Displaying 20 results from an estimated 30 matches for "movzx".
2014 Jan 02
4
EFI build problems
On 01/02/2014 04:09 AM, Ferenc Wagner wrote:
>
> Issuing another make after this gave the previous error again:
>
> isolinux.asm:1102: error: TIMES value -4 is negative
>
I just fixed this one... it seems to be a consequence of merging in the
MOVZX isolinux fix into the firmware branch.
-hpa
2014 Jan 03
1
EFI build problems
...erenc Wagner wrote:
>>>
>>> Issuing another make after this gave the previous error again:
>>>
>>> isolinux.asm:1102: error: TIMES value -4 is negative
>>>
>>
>> I just fixed this one... it seems to be a consequence of merging in the
>> MOVZX isolinux fix into the firmware branch.
>>
>> -hpa
>>
>
> Although the current error report was originated by an EFI (6.xx)
> build, the "same" (equivalent) prior MOVZX isolinux fix was
> previously also applied to the elflink and master (4.xx) branches....
2019 Mar 04
2
Where's the optimiser gone (part 11): use the proper instruction for sign extension
...[esp + 8] | mov eax, dword ptr [esp + 8]
cmp ecx, dword ptr [esp + 4] | cmp edx, dword ptr [esp + 4]
sbb ecx, eax | sbb edx, eax
setl cl | cdq
sar eax, 31 | setl al
movzx ecx, cl | movzx eax, al
add eax, ecx | add eax, edx
mov edx, eax | ret
sar edx, 31
ret
NOTE: not just here this sequence SHOULD be replaced with
mov edx, eax | cdq...
2018 Nov 20
2
A pattern for portable __builtin_add_overflow()
...amp; !check) | (!cond & check);
}
Assembly:
saddo_native: # @saddo_native
xor eax, eax
add edi, esi
seto al
mov dword ptr [rdx], edi
ret
saddo_portable: # @saddo_portable
lea eax, [rsi + rdi]
mov dword ptr [rdx], eax
cmp eax, esi
setle al
setg cl
test edi, edi
jg .LBB3_2
mov eax, ecx
.LBB3_2:
movzx eax, al
ret
saddo_portable2: # @saddo_portable2
lea eax, [rsi + rdi]
mov dword ptr [rdx], eax
test edi, edi
setg cl
cmp eax, esi
setg al
xor al, cl
movzx eax, al
ret
Do you know the trick to force the compiler to use the seto instruction?
I also noticed that the transformation for uaddo_portable...
2007 Aug 28
2
memdisk patch
...ux/memdisk is great, thanks Peter et. al.!
--
Duane Voth
duanev at io.com
-------------- next part --------------
--- memdisk.asm.orig 2007-08-20 13:02:26.000000000 -0500
+++ memdisk.asm 2007-08-20 17:31:17.000000000 -0500
@@ -462,10 +462,10 @@
cmp dword [es:si+4],-1
je .linear_address
- movzx esi,word [es:si+4] ; Offset
+ movzx ebx,word [es:si+4] ; Offset
movzx edi,word [es:si+6] ; Segment
shl edi,4
- add esi,edi
+ add ebx,edi
jmp .got_address
@@ -476,23 +476,24 @@
cmp dword [es:si+20],0 ; > 4 GB addresses not supported
jne .overrun
- mov esi,[es:si+16]
+ m...
2018 Nov 06
4
Rather poor code optimisation of current clang/LLVM targeting Intel x86 (both -64 and -32)
...2)
crc32be: # @crc32be
xor eax, eax
test esi, esi
jne .LBB0_2
jmp .LBB0_5
.LBB0_4: # in Loop: Header=BB0_2 Depth=1
add rdi, 1
test esi, esi
je .LBB0_5
.LBB0_2: # =>This Loop Header: Depth=1
add esi, -1
movzx edx, byte ptr [rdi]
shl edx, 24
xor edx, eax
mov ecx, -8
mov eax, edx
.LBB0_3: # Parent Loop BB0_2 Depth=1 | # 4 instructions instead of 6, r8 not clobbered!
lea r8d, [rax + rax] | add eax, eax
mov edx, r8d...
2011 Mar 19
2
[LLVMdev] Apparent optimizer bug on X86_64
...uce -- Do a reduction. |
1302 `-----------------------------*/
1303 yyreduce:
1304 /* yyn is the number of a rule to reduce with. */
1305 yylen = yyr2[yyn];
0x0000000000400c14 <rpcalc_parse+628>: mov r15d,r14d
0x0000000000400c17 <rpcalc_parse+631>: movzx r12d,BYTE PTR
[r15+0x4015e2]
0x0000000000400c1f <rpcalc_parse+639>: mov eax,0x1
0x0000000000400c24 <rpcalc_parse+644>: mov r13,rax
0x0000000000400c27 <rpcalc_parse+647>: sub r13,r12
0x0000000000400c2a <rpcalc_parse+650>: mov e...
2001 Dec 11
0
VirtualProtect and app crash: what's your interpretation?
...push esi
00760D5A push edi
00760D5B push eax
00760D5C push 75D5F0h
00760D61 call sub_75FC7B
00760D66 add esp, 8
00760D69 mov ds:dword_75D720, eax
00760D6E movzx ecx, ds:word_75D5F2
00760D75 cmp ecx, eax
00760D77 jbe loc_760EFC
00760D7D mov ecx, ds:dword_75D704
00760D83 imul eax, 28h
00760D86 mov eax, [eax+ecx+34h]
00760D8A sub eax, [ebp-...
2018 Nov 27
2
Rather poor code optimisation of current clang/LLVM targeting Intel x86 (both -64 and -32)
...jne .LBB0_2
>> jmp .LBB0_5
>> .LBB0_4: # in Loop: Header=BB0_2 Depth=1
>> add rdi, 1
>> test esi, esi
>> je .LBB0_5
>> .LBB0_2: # =>This Loop Header: Depth=1
>> add esi, -1
>> movzx edx, byte ptr [rdi]
>> shl edx, 24
>> xor edx, eax
>> mov ecx, -8
>> mov eax, edx
>> .LBB0_3: # Parent Loop BB0_2 Depth=1 | # 4 instructions instead of 6, r8
>> not clobbered!
>> lea r8d, [rax + rax]...
2013 Nov 26
3
Sysinux 6 will not boot ISOs on BIOS (i.e. pre-UEFI) systems
Hi,
hpa wrote:
> - mov dx,cx
> + movzx edx,cx
Gerardo Exequiel Pozzi:
> Yes! Fixed :)
> (maybe garbage in high word of "edx"?)
I am now pondering too, why my machine booted from high LBAs.
I understand that the new code zeros the upper 16 bit of EDX.
Was there remaining garbage from early BIOS activity before
isolinux....
2014 Jan 03
0
EFI build problems
...01/02/2014 04:09 AM, Ferenc Wagner wrote:
> >
> > Issuing another make after this gave the previous error again:
> >
> > isolinux.asm:1102: error: TIMES value -4 is negative
> >
>
> I just fixed this one... it seems to be a consequence of merging in the
> MOVZX isolinux fix into the firmware branch.
>
> -hpa
>
Although the current error report was originated by an EFI (6.xx)
build, the "same" (equivalent) prior MOVZX isolinux fix was
previously also applied to the elflink and master (4.xx) branches.
I'd like to request the a...
2014 Jan 03
1
EFI build problems, fixed in which git repo
...erenc Wagner wrote:
>>>
>>> Issuing another make after this gave the previous error again:
>>>
>>> isolinux.asm:1102: error: TIMES value -4 is negative
>>>
>>
>> I just fixed this one... it seems to be a consequence of merging in the
>> MOVZX isolinux fix into the firmware branch.
>
> And where is the fixed published?
>
> Over here I did do a `git pull`, but that told me "Already up-to-date."
>
> From another thread on this mailinglist I did understood that
> there is some delay in synchronisation of g...
2009 Apr 27
3
Question about vk_check and rllunpack
...pack bytes from SI into EDI
; On return (E)SI, EDI are updated and
; (E)CX contains number of bytes output.
;
rllunpack:
push word .pmentry
call simple_pm_call
ret
bits 32
.pmentry:
push edi
movzx esi,si
xor ecx,ecx
It looks to me like rllunpack does trash esi value (upper part), the check at vk_check.scan succeeds
and we jump to vk_check.not_vk.
In my test i got esi before rllunpack (0x3fece980) and after it's 0x0000e97f.
Am i missing something?
- Sebastian
2011 Mar 19
0
[LLVMdev] Apparent optimizer bug on X86_64
...t; 1302 `-----------------------------*/
> 1303 yyreduce:
> 1304 /* yyn is the number of a rule to reduce with. */
> 1305 yylen = yyr2[yyn];
> 0x0000000000400c14 <rpcalc_parse+628>: mov r15d,r14d
> 0x0000000000400c17 <rpcalc_parse+631>: movzx r12d,BYTE PTR
> [r15+0x4015e2]
> 0x0000000000400c1f <rpcalc_parse+639>: mov eax,0x1
> 0x0000000000400c24 <rpcalc_parse+644>: mov r13,rax
> 0x0000000000400c27 <rpcalc_parse+647>: sub r13,r12
> 0x0000000000400c2a <rpcalc_parse+65...
2008 Nov 22
5
[RFC][PATCH] Gfxboot COMBOOT module
...3
+ int 22h
+exit:
+ call far [gfx_bc_done]
+error:
+ ret
+
+cb_table dw cb_status ; 0
+ dw cb_fopen ; 1
+ dw cb_fread ; 2
+ dw cb_getcwd ; 3
+ dw cb_chdir ; 4
+ dw cb_readsector ; 5
+cb_len equ ($-cb_table)/2
+
+gfx_cb:
+ push cs
+ pop ds
+
+ cmp al,cb_len
+ jae gfx_cb_error
+
+ movzx bx,al
+ add bx,bx
+ call word [bx+cb_table]
+ jmp gfx_cb_end
+gfx_cb_error:
+ mov al,0ffh
+gfx_cb_end:
+ retf
+
+; Return status info
+;
+; return:
+; edx filename buffer (64 bytes)
+;
+cb_status:
+ mov edx,cs
+ shl edx,4
+ add edx,fname_buf
+
+ xor al,al
+ ret
+
+; Open file
+;
+; retu...
2009 Apr 05
3
[PATCH] Gfxboot COMBOOT module
...3
+ int 22h
+exit:
+ call far [gfx_bc_done]
+error:
+ ret
+
+cb_table dw cb_status ; 0
+ dw cb_fopen ; 1
+ dw cb_fread ; 2
+ dw cb_getcwd ; 3
+ dw cb_chdir ; 4
+ dw cb_readsector ; 5
+cb_len equ ($-cb_table)/2
+
+gfx_cb:
+ push cs
+ pop ds
+
+ cmp al,cb_len
+ jae gfx_cb_error
+
+ movzx bx,al
+ add bx,bx
+ call word [bx+cb_table]
+ jmp gfx_cb_end
+gfx_cb_error:
+ mov al,0ffh
+gfx_cb_end:
+ retf
+
+; Return status info
+;
+; return:
+; edx filename buffer (64 bytes)
+;
+cb_status:
+ mov edx,cs
+ shl edx,4
+ add edx,fname_buf
+
+ xor al,al
+ ret
+
+; Open file
+;
+; retu...
2018 Nov 28
2
Rather poor code optimisation of current clang/LLVM targeting Intel x86 (both -64 and -32)
...>> .LBB0_4: # in Loop: Header=BB0_2 Depth=1
>> >> add rdi, 1
>> >> test esi, esi
>> >> je .LBB0_5
>> >> .LBB0_2: # =>This Loop Header: Depth=1
>> >> add esi, -1
>> >> movzx edx, byte ptr [rdi]
>> >> shl edx, 24
>> >> xor edx, eax
>> >> mov ecx, -8
>> >> mov eax, edx
>> >> .LBB0_3: # Parent Loop BB0_2 Depth=1 | # 4 instructions instead of
>> 6, r8
>> &...
2012 Jul 05
0
[LLVMdev] clang optimizer does not remove unused/uneeded variables(and accesses) from global scope
...ov ebp, esp
.text:004012E3 call sub_4014C0
.text:004012E8 mov eax, [ebp+arg_4] ; dword_t random
= (dword_t)argv;
.text:004012EB mov byte_402000, al
.text:004012F0 mov dword_402004, eax
.text:004012F5 movzx ecx, al
.text:004012F8 add ecx, eax
.text:004012FA lea eax, [ecx+ecx*2]
.text:004012FD pop ebp
.text:004012FE retn
.text:004012FE sub_4012E0 endp
but why are these two lines not removed by the optimizer?
.text:0040...
2013 Nov 26
0
Sysinux 6 will not boot ISOs on BIOS (i.e. pre-UEFI) systems
...------------ next part --------------
diff --git a/core/isolinux.asm b/core/isolinux.asm
index bd4e9556922d..c4db4133e274 100644
--- a/core/isolinux.asm
+++ b/core/isolinux.asm
@@ -420,7 +420,7 @@ MaxLMA equ 384*1024 ; Reasonable limit (384K)
call getlinsec
pop eax
pop cx
- mov dx,cx
+ movzx edx,cx
pop bp
pop bx
2013 Dec 01
1
request backport fix for isolinux 4.xx branch
Recently a patch by HPA was added to the elflink branch,
"isolinux: Clear upper half of EDX before using..."
http://git.zytor.com/?p=syslinux/syslinux.git;a=commit;h=870b84dd8714d
dfccc9288025331423efa6d76b7
The patch was then applied to the firmware branch too.
The patch solves an issue introduced by a prior commit "isolinux:
Update LBA in getlinsec loop".
Since the