aboutsummaryrefslogtreecommitdiff
path: root/src/lib/libc/syscall.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/libc/syscall.c')
-rw-r--r--src/lib/libc/syscall.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/lib/libc/syscall.c b/src/lib/libc/syscall.c
index 83708da..32aba00 100644
--- a/src/lib/libc/syscall.c
+++ b/src/lib/libc/syscall.c
@@ -9,7 +9,8 @@ static inline uint32_t sc_docall(uint32_t a, uint32_t b, uint32_t c, uint32_t d,
uint32_t ret;
asm volatile("int $0x40"
:"=a"(ret)
- :"a"(a),"b"(b),"c"(c),"d"(d),"S"(ss),"D"(dd));
+ :"a"(a),"b"(b),"c"(c),"d"(d),"S"(ss),"D"(dd)
+ :"memory");
return ret;
}
@@ -108,7 +109,7 @@ fd_t sc_use_token(token_t *tok) {
}
bool sc_make_fs(const char* name, const char* driver, fd_t source, const char* options) {
- volatile sc_make_fs_args_t args = {
+ sc_make_fs_args_t args = {
.driver = driver,
.driver_strlen = strlen(driver),
.fs_name = name,
@@ -124,7 +125,7 @@ bool sc_fs_add_source(const char* fs, fd_t source, const char* options) {
return sc_docall(SC_FS_ADD_SRC, (uint32_t)fs, strlen(fs), source, (uint32_t)options, strlen(options));
}
bool sc_fs_subfs(const char* name, const char* orig_fs, const char* root, int ok_modes) {
- volatile sc_subfs_args_t args = {
+ sc_subfs_args_t args = {
.new_name = name,
.new_name_strlen = strlen(name),
.from_fs = orig_fs,