mirror of
https://github.com/vsariola/sointu.git
synced 2025-05-28 03:10:24 -04:00
optimize(templates): inline calls to __imp__*File on x86
(cherry picked from commit e8bf9cb6467686ba35895094ab804360ab736b5f)
This commit is contained in:
parent
0f34674d7f
commit
76cf47a070
@ -27,16 +27,17 @@
|
|||||||
push 0 ; OF_READ
|
push 0 ; OF_READ
|
||||||
push ebx ; &ofstruct, blatantly reuse the sample table
|
push ebx ; &ofstruct, blatantly reuse the sample table
|
||||||
push su_gmdls_path1 ; path
|
push su_gmdls_path1 ; path
|
||||||
call _OpenFile@12 ; eax = OpenFile(path,&ofstruct,OF_READ) // should not touch ebx according to calling convention
|
call dword [__imp__OpenFile@12]; eax = OpenFile(path,&ofstruct,OF_READ) // should not touch ebx according to calling convention
|
||||||
push 0 ; NULL
|
push 0 ; NULL
|
||||||
push ebx ; &bytes_read, reusing sample table again; it does not matter that the first four bytes are trashed
|
push ebx ; &bytes_read, reusing sample table again; it does not matter that the first four bytes are trashed
|
||||||
push 3440660 ; number of bytes to read
|
push 3440660 ; number of bytes to read
|
||||||
push ebx ; here we actually pass the sample table to readfile
|
push ebx ; here we actually pass the sample table to readfile
|
||||||
push eax ; handle to file
|
push eax ; handle to file
|
||||||
call _ReadFile@20 ; Readfile(handle,&su_sample_table,SAMPLE_TABLE_SIZE,&bytes_read,NULL)
|
call dword [__imp__ReadFile@20] ; Readfile(handle,&su_sample_table,SAMPLE_TABLE_SIZE,&bytes_read,NULL)
|
||||||
ret
|
ret
|
||||||
extern _OpenFile@12 ; requires windows
|
extern __imp__OpenFile@12 ; requires windows
|
||||||
extern _ReadFile@20 ; requires windows
|
extern __imp__ReadFile@20
|
||||||
|
; requires windows
|
||||||
{{end}}
|
{{end}}
|
||||||
|
|
||||||
{{.Data "su_gmdls_path1"}}
|
{{.Data "su_gmdls_path1"}}
|
||||||
|
Loading…
Reference in New Issue
Block a user