Rather than aborting because contains_aligned_value_p is not
yet implemented, use the type alignment as the byval alignment.
This should get fixed up later when the ABI stuff is reworked.

llvm-svn: 104054
diff --git a/dragonegg/bits_and_bobs.cpp b/dragonegg/bits_and_bobs.cpp
index 05fa603..486f214 100644
--- a/dragonegg/bits_and_bobs.cpp
+++ b/dragonegg/bits_and_bobs.cpp
@@ -3,7 +3,3 @@
 int ix86_regparm;
 
 union tree_node;
-
-extern "C" bool contains_aligned_value_p (union tree_node *type) {
-  abort();
-}
diff --git a/dragonegg/x86/llvm-target.h b/dragonegg/x86/llvm-target.h
index 2ea1349..e4f5a91 100644
--- a/dragonegg/x86/llvm-target.h
+++ b/dragonegg/x86/llvm-target.h
@@ -99,10 +99,8 @@
 /* On x86-32 objects containing SSE vectors are 16 byte aligned, everything
    else 4.  On x86-64 vectors are 8-byte aligned, everything else can
    be figured out by the back end. */
-extern "C" bool contains_aligned_value_p(tree);
 #define LLVM_BYVAL_ALIGNMENT(T) \
-  (TARGET_64BIT ? (TREE_CODE(T)==VECTOR_TYPE ? 8 : 0) : \
-   TARGET_SSE && contains_aligned_value_p(T) ? 16 : 4)
+  (TYPE_ALIGN(T) / 8)
 
 extern tree llvm_x86_should_return_selt_struct_as_scalar(tree);