dealt (nicely) with the libgcc.a on the crio not having enough functions
diff --git a/aos/build/libgcc-additions/README b/aos/build/libgcc-additions/README
new file mode 100644
index 0000000..6a9a665
--- /dev/null
+++ b/aos/build/libgcc-additions/README
@@ -0,0 +1,26 @@
+This directory contains the stuff necessary to deal with the fact that the
+  libgcc.a from the old GCC that the cRIO has doesn't have all of the functions
+  that newer GCCs expect from it.
+
+[extra functions necessary for 4.5.2]
+I generated this diff with `powerpc-wrs-vxworks-nm \
+  gccdist/WindRiver/gnu/3.4.4-vxworks-6.3/x86-win32/lib/gcc/powerpc-wrs-vxworks/3.4.4/libgcc.a \
+  | fgrep '000 T' | awk ' { print $NF }'` (and using the same command with the
+  gccdist.a from the 4.5.2 GCC.
+  I then gave the outputs from both of those to diff and edited out by hand the
+  functions that just moved.
+__powisf2
+__powidf2
+__mulsc3
+__muldc3
+__divsc3
+__divdc3
+__bswapsi2
+__bswapdi2
+__floatundisf
+__floatundidf
+__eprintf
+
+eprintf looks like it's not needed.
+Compiler-RT thinks that bswapsi2 and bswapdi2 are only needed on arm, so it
+  only has arm assembly for them.
diff --git a/aos/build/libgcc-additions/_bswapdi2.o b/aos/build/libgcc-additions/_bswapdi2.o
new file mode 100644
index 0000000..8bc6f56
--- /dev/null
+++ b/aos/build/libgcc-additions/_bswapdi2.o
Binary files differ
diff --git a/aos/build/libgcc-additions/_bswapsi2.o b/aos/build/libgcc-additions/_bswapsi2.o
new file mode 100644
index 0000000..4700ad8
--- /dev/null
+++ b/aos/build/libgcc-additions/_bswapsi2.o
Binary files differ
diff --git a/aos/build/libgcc-additions/libgcc-additions.gypi b/aos/build/libgcc-additions/libgcc-additions.gypi
new file mode 100644
index 0000000..8090f7c
--- /dev/null
+++ b/aos/build/libgcc-additions/libgcc-additions.gypi
@@ -0,0 +1,33 @@
+{
+  'targets': [
+    {
+      'target_name': 'libgcc-4.5.2',
+      'type': 'static_library',
+      'variables': {
+        'compiler-rt': '<(externals)/compiler-rt-<(compiler_rt_version)',
+      },
+      'include_dirs': [
+        '<(compiler-rt)/lib',
+      ],
+      'defines': [
+        '_YUGA_BIG_ENDIAN=1',
+        '_YUGA_LITTLE_ENDIAN=0',
+        'UINT64_C(c)=c##ULL',
+      ],
+      'sources': [
+        '<(compiler-rt)/lib/powisf2.c',
+        '<(compiler-rt)/lib/powidf2.c',
+        '<(compiler-rt)/lib/mulsc3.c',
+        '<(compiler-rt)/lib/muldc3.c',
+        '<(compiler-rt)/lib/divsc3.c',
+        '<(compiler-rt)/lib/divdc3.c',
+        #'<(compiler-rt)/lib/bswapsi2.c',
+        '_bswapsi2.o',
+        #'<(compiler-rt)/lib/bswapdi2.c',
+        '_bswapdi2.o',
+        '<(compiler-rt)/lib/floatundisf.c',
+        '<(compiler-rt)/lib/floatundidf.c',
+      ],
+    },
+  ],
+}