diff --git a/test/common_amd64/functions/access.c b/test/common_amd64/functions/access.c
new file mode 100644
index 0000000..fd4cd2a
--- /dev/null
+++ b/test/common_amd64/functions/access.c
@@ -0,0 +1,26 @@
+/* Copyright (C) 2020 Jeremiah Orians
+ * This file is part of M2-Planet.
+ *
+ * M2-Planet is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * M2-Planet is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with M2-Planet. If not, see .
+ */
+
+int access(char* pathname, int mode)
+{
+ asm("LOAD_EFFECTIVE_ADDRESS_rdi %16"
+ "LOAD_INTEGER_rdi"
+ "LOAD_EFFECTIVE_ADDRESS_rsi %8"
+ "LOAD_INTEGER_rsi"
+ "LOAD_IMMEDIATE_rax %21"
+ "SYSCALL");
+}
diff --git a/test/common_amd64/functions/chdir.c b/test/common_amd64/functions/chdir.c
new file mode 100644
index 0000000..39218ab
--- /dev/null
+++ b/test/common_amd64/functions/chdir.c
@@ -0,0 +1,32 @@
+/* Copyright (C) 2020 Jeremiah Orians
+ * This file is part of M2-Planet.
+ *
+ * M2-Planet is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * M2-Planet is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with M2-Planet. If not, see .
+ */
+
+int chdir(char* path)
+{
+ asm("LOAD_EFFECTIVE_ADDRESS_rdi %8"
+ "LOAD_INTEGER_rdi"
+ "LOAD_IMMEDIATE_rax %80"
+ "SYSCALL");
+}
+
+int fchdir(int fd)
+{
+ asm("LOAD_EFFECTIVE_ADDRESS_rdi %8"
+ "LOAD_INTEGER_rdi"
+ "LOAD_IMMEDIATE_rax %81"
+ "SYSCALL");
+}
diff --git a/test/common_armv7l/functions/access.c b/test/common_armv7l/functions/access.c
new file mode 100644
index 0000000..0919d9e
--- /dev/null
+++ b/test/common_armv7l/functions/access.c
@@ -0,0 +1,26 @@
+/* Copyright (C) 2020 Jeremiah Orians
+ * This file is part of M2-Planet.
+ *
+ * M2-Planet is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * M2-Planet is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with M2-Planet. If not, see .
+ */
+
+int access(char* pathname, int mode)
+{
+ asm("!4 R0 SUB R12 ARITH_ALWAYS"
+ "!0 R0 LOAD32 R0 MEMORY"
+ "!8 R1 SUB R12 ARITH_ALWAYS"
+ "!0 R1 LOAD32 R1 MEMORY"
+ "!33 R7 LOADI8_ALWAYS"
+ "SYSCALL_ALWAYS");
+}
diff --git a/test/common_armv7l/functions/chdir.c b/test/common_armv7l/functions/chdir.c
new file mode 100644
index 0000000..11efd7a
--- /dev/null
+++ b/test/common_armv7l/functions/chdir.c
@@ -0,0 +1,32 @@
+/* Copyright (C) 2020 Jeremiah Orians
+ * This file is part of M2-Planet.
+ *
+ * M2-Planet is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * M2-Planet is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with M2-Planet. If not, see .
+ */
+
+int chdir(char* path)
+{
+ asm("!4 R0 SUB R12 ARITH_ALWAYS"
+ "!0 R0 LOAD32 R0 MEMORY"
+ "!12 R7 LOADI8_ALWAYS"
+ "SYSCALL_ALWAYS");
+}
+
+int fchdir(int fd)
+{
+ asm("!4 R0 SUB R12 ARITH_ALWAYS"
+ "!0 R0 LOAD32 R0 MEMORY"
+ "!133 R7 LOADI8_ALWAYS"
+ "SYSCALL_ALWAYS");
+}
diff --git a/test/common_x86/functions/access.c b/test/common_x86/functions/access.c
new file mode 100644
index 0000000..0146f52
--- /dev/null
+++ b/test/common_x86/functions/access.c
@@ -0,0 +1,26 @@
+/* Copyright (C) 2020 Jeremiah Orians
+ * This file is part of M2-Planet.
+ *
+ * M2-Planet is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * M2-Planet is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with M2-Planet. If not, see .
+ */
+
+int access(char* pathname, int mode)
+{
+ asm("LOAD_EFFECTIVE_ADDRESS_ebx %8"
+ "LOAD_INTEGER_ebx"
+ "LOAD_EFFECTIVE_ADDRESS_ecx %4"
+ "LOAD_INTEGER_ecx"
+ "LOAD_IMMEDIATE_eax %33"
+ "INT_80");
+}
diff --git a/test/common_x86/functions/chdir.c b/test/common_x86/functions/chdir.c
new file mode 100644
index 0000000..ca046a8
--- /dev/null
+++ b/test/common_x86/functions/chdir.c
@@ -0,0 +1,32 @@
+/* Copyright (C) 2020 Jeremiah Orians
+ * This file is part of M2-Planet.
+ *
+ * M2-Planet is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * M2-Planet is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with M2-Planet. If not, see .
+ */
+
+int chdir(char* path)
+{
+ asm("LOAD_EFFECTIVE_ADDRESS_ebx %4"
+ "LOAD_INTEGER_ebx"
+ "LOAD_IMMEDIATE_eax %12"
+ "INT_80");
+}
+
+int fchdir(int fd)
+{
+ asm("LOAD_EFFECTIVE_ADDRESS_ebx %4"
+ "LOAD_INTEGER_ebx"
+ "LOAD_IMMEDIATE_eax %133"
+ "INT_80");
+}