15e61cba0SAndrew Jones /* 25e61cba0SAndrew Jones * Adapted from u-boot's arch/arm/lib/eabi_compat.c 349f758b8SAndrew Jones * 449f758b8SAndrew Jones * Copyright (C) 2017, Red Hat Inc, Andrew Jones <drjones@redhat.com> 549f758b8SAndrew Jones * 649f758b8SAndrew Jones * This work is licensed under the terms of the GNU GPL, version 2. 75e61cba0SAndrew Jones */ 88cca5668SAndrew Jones #include <libcflat.h> 95e61cba0SAndrew Jones 10*0df901e0SAndrew Jones /* Needed to compile with -Wmissing-prototypes */ 11*0df901e0SAndrew Jones int raise(int signum); 12*0df901e0SAndrew Jones void __aeabi_unwind_cpp_pr0(void); 13*0df901e0SAndrew Jones void __aeabi_unwind_cpp_pr1(void); 14*0df901e0SAndrew Jones raise(int signum __unused)155e61cba0SAndrew Jonesint raise(int signum __unused) 165e61cba0SAndrew Jones { 175e61cba0SAndrew Jones printf("Divide by zero!\n"); 185e61cba0SAndrew Jones abort(); 195e61cba0SAndrew Jones return 0; 205e61cba0SAndrew Jones } 215e61cba0SAndrew Jones 225e61cba0SAndrew Jones /* Dummy functions to avoid linker complaints */ __aeabi_unwind_cpp_pr0(void)235e61cba0SAndrew Jonesvoid __aeabi_unwind_cpp_pr0(void) 245e61cba0SAndrew Jones { 255e61cba0SAndrew Jones } 265e61cba0SAndrew Jones __aeabi_unwind_cpp_pr1(void)275e61cba0SAndrew Jonesvoid __aeabi_unwind_cpp_pr1(void) 285e61cba0SAndrew Jones { 295e61cba0SAndrew Jones } 30