This is the mail archive of the mailing list for the newlib project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: [PATCH] New configuration option for lite exit


> -----Original Message-----
> From: Joey Ye []
> Sent: Wednesday, April 17, 2013 6:00 PM
> To:
> Cc: Joey Ye
> Subject: [PATCH] New configuration option for lite exit
> This patch introduces lite exit to reduce code size for these applications
> don't care finalization. Lite exit weakly references to atexit,
> and call_exitprocs functions in startup and exit.
> Lite exit is enabled/disabled by --enable-lite-exit. Currently this
feature is
> only implemented for ARM as changes in libgloss is target specific. Other
> architecture can successfully build with --enable-lite-exit but references
> clean up functions will be all non-weak, unless change in libgloss is
> ChangeLog:
> newlib/
>     Lite exit support.
>     * acconfig.h (_LITE_EXIT): New macro.
>     * (enable-lite-exit): New option.
>     (_LITE_EXIT): Define new macro.
>     * configure: Regenerated.
>     * newlib.hin (_LITE_EXIT): New macro.
>     * libc/stdlib/__call_atexit.c (register_fini): Not unconditionally
>     called in init.
>     * libc/stdlib/atexit.c (__atexit_dummy): Explicit reference to
>     __call_exitprocs.
>     * libc/stdlib/cxa_atexit.c (__register_exitproc): Weak reference.
>     * libc/stdlib/cxa_finalize.c (__cxa_finalize_dummy): Explicit
>     reference to __register_exitproc.
>     (__cxa_finalize): Remove tail white space.
>     * libc/stdlib/exit.c (exit): Remove TWS and weak reference to
>     __call_exitprocs.
> libgloss/
>     * arm/crt0.S (_mainCRTStartup): Weak reference to atexit and _fini
>     when lite exit is enabled.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]