aboutsummaryrefslogtreecommitdiffstats
path: root/dos/syslinux.c
diff options
context:
space:
mode:
authorhpa <hpa>2004-12-15 12:39:24 +0000
committerhpa <hpa>2004-12-15 12:39:24 +0000
commit5ddecdda2e74520d252dbe50528c3baf1a004992 (patch)
tree4f0515eb4bcee264f9424443112c09cbd05cf99b /dos/syslinux.c
parente5b229c776a5de62121a18a981119484d367ad90 (diff)
downloadsyslinux-devel-5ddecdda2e74520d252dbe50528c3baf1a004992.tar.gz
syslinux-devel-5ddecdda2e74520d252dbe50528c3baf1a004992.tar.xz
syslinux-devel-5ddecdda2e74520d252dbe50528c3baf1a004992.zip
Tweak optimizations.
Diffstat (limited to 'dos/syslinux.c')
-rw-r--r--dos/syslinux.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/dos/syslinux.c b/dos/syslinux.c
index 051912b3..dbab7bcc 100644
--- a/dos/syslinux.c
+++ b/dos/syslinux.c
@@ -50,7 +50,7 @@ int open(const char *filename, int mode)
rv = 0x3D00 | mode;
asm volatile("int $0x21 ; setc %0"
- : "=rm" (err), "+a" (rv)
+ : "=abcdm" (err), "+a" (rv)
: "d" (filename));
if ( err )
die("cannot open ldlinux.sys");
@@ -79,7 +79,7 @@ ssize_t write_file(int fd, const void *buf, size_t count)
while ( count ) {
rv = 0x4000;
asm volatile("int $0x21 ; setc %0"
- : "=rm" (err), "+a" (rv)
+ : "=abcdm" (err), "+a" (rv)
: "b" (fd), "c" (count), "d" (buf));
if ( err || rv == 0 )
die("file write error");
@@ -96,7 +96,7 @@ void write_device(int drive, const void *buf, size_t nsecs, unsigned int sector)
uint8_t err;
asm volatile("int $0x26 ; setc %0 ; popfw"
- : "=rm" (err)
+ : "=abcdm" (err)
: "a" (drive), "b" (buf), "c" (nsecs), "d" (sector));
if ( err )
@@ -108,7 +108,7 @@ void read_device(int drive, const void *buf, size_t nsecs, unsigned int sector)
uint8_t err;
asm volatile("int $0x25 ; setc %0 ; popfw"
- : "=rm" (err)
+ : "=abcdm" (err)
: "a" (drive), "b" (buf), "c" (nsecs), "d" (sector));
if ( err )
@@ -121,7 +121,7 @@ void set_attributes(const char *file, int attributes)
uint16_t rv = 0x4301;
asm volatile("int $0x21 ; setc %0"
- : "=rm" (err), "+a" (rv)
+ : "=abcdm" (err), "+a" (rv)
: "c" (attributes), "d" (file));
if ( err )