* libgloss/nds32/_exit.S: Finish with an infinite loop in _exit.

* libgloss/nds32/_getpid.S: Don't issue _getpid system call, it is
	always successful.
	* libgloss/nds32/_gettimeofday.S: No error for _gettimeofday is defined
	in SYS_geterr handler.
	* libgloss/nds32/_isatty.S: No error for _isatty is defined in
	SYS_geterr handler.
	* libgloss/nds32/_kill.S: Alway fail. errno = EINVAL.
	* libgloss/nds32/_link.S: Alway fail. errno =  EMLINK.
	* libgloss/nds32/_times.S: Alway fail. errno = EACCES.
	* libgloss/nds32/_unlink.S: fix copy and paste error.
	* libgloss/nds32/crt0.S: Add pre_c_init, post_c_init, arg_init.
	* libgloss/nds32/crt1.S: Add pre_c_init, post_c_init, arg_init.
	* libgloss/nds32/syscall_extra.h: Re-format.
	* libgloss/nds32/vh.h: Add more virtual hosting number.
This commit is contained in:
Corinna Vinschen
2014-12-15 13:30:07 +00:00
parent 0cbcde7bdb
commit d4ef8a6368
13 changed files with 285 additions and 81 deletions

View File

@@ -27,22 +27,18 @@ ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
#ifdef __NDS32_VH__
#include "vh.h"
.extern _impure_ptr
TYPE3 _exit, VH_EXIT
#else /* not __NDS32_VH__ */
#include "../syscall.h"
#include "syscall_extra.h"
.section .text
.text
.global _exit
.type _exit, @function
.align 2
.align 2
_exit:
#ifdef __NDS32_VH__
BREAK VH_EXIT /* Generate_Exception(Breakpoint); */
#else
syscall SYS_exit /* Make syscall 'SYS_exit'. */
#endif
.L_infinite_loop:
b .L_infinite_loop
.size _exit, .-_exit
#endif /* not __NDS32_VH__ */