fix: cat 指令的输出问题
This commit is contained in:
parent
21ac9ce01e
commit
e9967889a0
@ -453,8 +453,6 @@ int fs_read_all(char *path, void **ret_buf)
|
|||||||
if (cur < 0) {
|
if (cur < 0) {
|
||||||
return cur;
|
return cur;
|
||||||
}
|
}
|
||||||
// FIXME: 此处在 Release 模式下第一次读取前 16 字节为空
|
|
||||||
memcpy(buf, (const void *) TMPFS_READ_BUF_VADDR, cur);
|
|
||||||
memcpy(buf, (const void *) TMPFS_READ_BUF_VADDR, cur);
|
memcpy(buf, (const void *) TMPFS_READ_BUF_VADDR, cur);
|
||||||
pos += cur;
|
pos += cur;
|
||||||
buf += cur;
|
buf += cur;
|
||||||
|
@ -12,6 +12,10 @@ void memset(void *dst, int c, u64 len)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// FIXME: 此处 workaround 用于避免 GCC 插入 SIMD 指令使用未被备份的寄存器导致程序问题
|
||||||
|
// See also: https://ipads.se.sjtu.edu.cn/mospi/discussion/d/205-memcpy-gcc
|
||||||
|
#pragma GCC push_options
|
||||||
|
#pragma GCC optimize("O0")
|
||||||
void memcpy(void *dst, const void *src, u64 len)
|
void memcpy(void *dst, const void *src, u64 len)
|
||||||
{
|
{
|
||||||
u64 i = 0;
|
u64 i = 0;
|
||||||
@ -19,6 +23,7 @@ void memcpy(void *dst, const void *src, u64 len)
|
|||||||
((u8 *) dst)[i] = ((u8 *) src)[i];
|
((u8 *) dst)[i] = ((u8 *) src)[i];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
#pragma GCC pop_options
|
||||||
|
|
||||||
int memcmp(const void *s1, const void *s2, size_t n)
|
int memcmp(const void *s1, const void *s2, size_t n)
|
||||||
{
|
{
|
||||||
|
Loading…
x
Reference in New Issue
Block a user