OSDN Git Service

* config/bfin/uclinux.h (NO_IMPLICIT_EXTERN_C): Define.
authorbernds <bernds@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 9 Aug 2005 09:47:52 +0000 (09:47 +0000)
committerbernds <bernds@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 9 Aug 2005 09:47:52 +0000 (09:47 +0000)
* config/bfin/elf.h (NO_IMPLICIT_EXTERN_C): Define.
* config/bfin/bfin.c (bfin_return_in_memory): Update to really match
Visual DSP.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@102906 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/config/bfin/bfin.c
gcc/config/bfin/elf.h
gcc/config/bfin/uclinux.h

index 7e11985..f9529e0 100644 (file)
@@ -1,3 +1,10 @@
+2005-08-09  Jie Zhang  <jie.zhang@analog.com>
+
+       * config/bfin/uclinux.h (NO_IMPLICIT_EXTERN_C): Define.
+       * config/bfin/elf.h (NO_IMPLICIT_EXTERN_C): Define.
+       * config/bfin/bfin.c (bfin_return_in_memory): Update to really match
+       Visual DSP.
+
 2005-08-09  James A. Morrison  <phython@gcc.gnu.org>
 
        * tree-ssa-loop-niter.c (tree_simplify_using_condition_1): Use
index 76b6f04..926f27a 100644 (file)
@@ -1406,14 +1406,8 @@ bfin_pass_by_reference (CUMULATIVE_ARGS *cum ATTRIBUTE_UNUSED,
 int
 bfin_return_in_memory (tree type)
 {
-  int size;
-  enum machine_mode mode = TYPE_MODE (type);
-
-  if (mode == BLKmode)
-    return 1;
-  size = int_size_in_bytes (type);     
-
-  return size > 8;
+  int size = int_size_in_bytes (type);
+  return size > 2 * UNITS_PER_WORD || size == -1;
 }
 
 /* Register in which address to store a structure value
index 643d519..5b0eb20 100644 (file)
@@ -14,3 +14,5 @@
 
 #undef USER_LABEL_PREFIX
 #define USER_LABEL_PREFIX "_"
+
+#define NO_IMPLICIT_EXTERN_C
index d68008a..361a923 100644 (file)
@@ -8,3 +8,5 @@
 
 #undef  LIB_SPEC
 #define LIB_SPEC "%{pthread:-lpthread} -lc"
+
+#define NO_IMPLICIT_EXTERN_C