summaryrefslogtreecommitdiff
path: root/package/grub/patches/210-remove_inline_asm.patch
diff options
context:
space:
mode:
Diffstat (limited to 'package/grub/patches/210-remove_inline_asm.patch')
-rw-r--r--package/grub/patches/210-remove_inline_asm.patch14
1 files changed, 14 insertions, 0 deletions
diff --git a/package/grub/patches/210-remove_inline_asm.patch b/package/grub/patches/210-remove_inline_asm.patch
new file mode 100644
index 0000000..8eb9fc2
--- /dev/null
+++ b/package/grub/patches/210-remove_inline_asm.patch
@@ -0,0 +1,14 @@
+--- a/stage2/fsys_iso9660.c
++++ b/stage2/fsys_iso9660.c
+@@ -83,10 +83,7 @@ iso9660_devread (int sector, int byte_of
+
+ sector += (byte_offset >> sector_size_lg2);
+ byte_offset &= (buf_geom.sector_size - 1);
+- asm volatile ("shl%L0 %1,%0"
+- : "=r"(sector)
+- : "Ic"((int8_t)(ISO_SECTOR_BITS - sector_size_lg2)),
+- "0"(sector));
++ sector <<= ISO_SECTOR_BITS - sector_size_lg2;
+
+ #if !defined(STAGE1_5)
+ if (disk_read_hook && debug)