--- llvm-3.8.0-r2.ebuild.old	2016-06-12 23:54:20.583749524 -0400
+++ llvm-3.8.0-r2.ebuild	2016-06-13 13:51:39.192741680 -0400
@@ -358,6 +358,25 @@
 		#filter-flags -msahf -frecord-gcc-switches
 	fi
 
+	if tc-is-cross-compiler; then
+		[[ -x "/usr/bin/llvm-tblgen" ]] \
+			|| die "/usr/bin/llvm-tblgen not found or usable"
+		mycmakeargs+=(
+			-DCMAKE_CROSSCOMPILING=True
+			-DLLVM_TABLEGEN=/usr/bin/llvm-tblgen
+			-DCMAKE_CXX_FLAGS="-I${EROOT}usr/include/"
+		)
+
+		if use clang; then
+			[[ -x "/usr/bin/clang-tblgen" ]] \
+				|| die "/usr/bin/clang-tblgen not found or usable"
+			mycmakeargs+=(-DCLANG_TABLEGEN=/usr/bin/clang-tblgen)
+			if [[ ${CXX} == *clang* ]]; then
+				mycmakeargs+=(-DLLVM_ENABLE_PIC=False)
+			fi
+		fi
+	fi
+
 	cmake-utils_src_configure
 }