-LIB1ASMFUNCS = _divI _divU _remI _remU _div_const
-LIB1ASMSRC = pa/milli64.S
-TARGET_LIBGCC2_CFLAGS = -fPIC -Dpa64=1 -DELF=1
+TARGET_LIBGCC2_CFLAGS = -fPIC -Dpa64=1 -DELF=1 -mlong-calls
+LIB2FUNCS_EXTRA = quadlib.c
+LIBGCCSTUB_OBJS = rfi-stub.o dfi-stub.o jvrc-stub.o cxaf-stub.o
-LIB2FUNCS_EXTRA=quadlib.c
+stublib.c: $(srcdir)/config/pa/stublib.c
+ rm -f stublib.c
+ cp $(srcdir)/config/pa/stublib.c .
-# We'll need this once .init sections are enabled on PA64.
-#EXTRA_PARTS = crtbegin.o crtend.o
+rfi-stub.o: stublib.c $(GCC_PASSES)
+ $(GCC_FOR_TARGET) -c -O2 -DL_register_frame_info stublib.c \
+ -o rfi-stub.o
-# For the time being, we are using collect.
-#USE_COLLECT2 =
+dfi-stub.o: stublib.c $(GCC_PASSES)
+ $(GCC_FOR_TARGET) -c -O2 -DL_deregister_frame_info stublib.c \
+ -o dfi-stub.o
-quadlib.c: $(srcdir)/config/pa/quadlib.c
- rm -f quadlib.c
- cp $(srcdir)/config/pa/quadlib.c .
+cxaf-stub.o: stublib.c $(GCC_PASSES)
+ $(GCC_FOR_TARGET) -c -O2 -DL_cxa_finalize stublib.c \
+ -o cxaf-stub.o
+
+jvrc-stub.o: stublib.c $(GCC_PASSES)
+ $(GCC_FOR_TARGET) -c -O2 -DL_Jv_RegisterClasses stublib.c \
+ -o jvrc-stub.o
+
+$(T)libgcc_stub.a: $(LIBGCCSTUB_OBJS)
+ -rm -rf $(T)libgcc_stub.a
+ $(AR) rc $(T)libgcc_stub.a $(LIBGCCSTUB_OBJS)
+ $(RANLIB) $(T)libgcc_stub.a