Files
jerryscript/jerry-libc/target/mcu-stubs/jerry-libc-target.c
T
Akos Kiss d6fb76416a Add abort () to jerry-libc
Added declaration and implementations of `void abort (void)` to
jerry-libc. As the linux implementation relies on the `getpid`
syscall - which has no arguments - `syscall_0` implementations
have been added as well.

`libc_fatal` has been adapted to use the new `abort` function
instead of `exit`. This also made the definition of
`LIBC_FATAL_ERROR_EXIT_CODE` unnecessary.

Finally, the syscall fatal error message was fixed.

JerryScript-DCO-1.0-Signed-off-by: Akos Kiss akiss@inf.u-szeged.hu
2015-06-02 18:12:29 +02:00

64 lines
1.5 KiB
C

/* Copyright 2015 Samsung Electronics Co., Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/**
* Jerry libc platform-specific functions stm32f4 implementation
*/
#include <stdio.h>
#include <stdlib.h>
#include "jerry-libc-defs.h"
/** Output of character. Writes the character c, cast to an unsigned char, to stdout. */
int
putchar (int c __attr_unused___)
{
return 1;
} /* putchar */
/** exit - cause normal process termination */
void __attr_noreturn___ __attr_used___
exit (int status __attr_unused___)
{
while (true)
{
}
} /* exit */
/** abort - cause abnormal process termination */
void __attr_noreturn___ __attr_used___
abort (void)
{
while (true)
{
}
} /* abort */
/**
* fwrite
*
* @return number of bytes written
*/
size_t
fwrite (const void *ptr __attr_unused___, /**< data to write */
size_t size, /**< size of elements to write */
size_t nmemb, /**< number of elements */
FILE *stream __attr_unused___) /**< stream pointer */
{
return size * nmemb;
} /* fwrite */