Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 1 May 2002 20:32:23 -0700 (PDT)
From:      Peter Wemm <peter@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 10635 for review
Message-ID:  <200205020332.g423WNV65224@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://people.freebsd.org/~peter/p4db/chv.cgi?CH=10635

Change 10635 by peter@peter_daintree on 2002/05/01 20:32:15

	IFC @10634

Affected files ...

... //depot/projects/ia64/contrib/gcc.295/config/i386/freebsd.h#5 integrate
... //depot/projects/ia64/contrib/gcc.295/config/mips/abi64.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/bsd-4.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/bsd-5.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/cross64.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/dec-bsd.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/dec-osf1.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/ecoff.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/ecoffl.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/elf.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/elf64.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/elfl.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/elfl64.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/elflorion.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/elforion.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/gnu.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/iris3.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/iris4.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/iris4loser.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/iris5.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/iris5gas.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/iris6.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/linux.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/mips-5.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/mips.c#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/mips.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/mips.md#3 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/mips16.S#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/netbsd.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/news4.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/news5.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/nws3250v4.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/osfrose.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/r3900.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/rtems64.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/sni-gas.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/sni-svr4.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/svr3-4.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/svr3-5.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/svr4-4.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/svr4-5.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/svr4-t.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/t-bsd#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/t-bsd-gas#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/t-cross64#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/t-ecoff#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/t-elf#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/t-iris6#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/t-mips#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/t-mips-gas#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/t-osfrose#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/t-r3900#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/t-svr3#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/t-svr3-gas#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/t-svr4#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/t-svr4-gas#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/vxworks.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/x-dec-osf1#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/x-iris#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/x-iris3#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/x-iris6#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/x-mips#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/x-netbsd#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/x-nws3250v4#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/x-osfrose#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/x-sni-svr4#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/x-sony#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/x-sysv#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/xm-iris3.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/xm-iris4.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/xm-iris5.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/xm-iris6.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/xm-mips.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/xm-news.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/xm-nws3250v4.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/xm-sysv.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/config/mips/xm-sysv4.h#2 delete
... //depot/projects/ia64/contrib/gcc.295/cp/g++spec.c#2 integrate
... //depot/projects/ia64/contrib/gcc.295/integrate.c#2 integrate
... //depot/projects/ia64/contrib/gcc.295/stmt.c#2 integrate
... //depot/projects/ia64/crypto/openssh/ssh_config#4 integrate
... //depot/projects/ia64/crypto/openssh/sshd_config#5 integrate
... //depot/projects/ia64/gnu/usr.bin/cc/cc_tools/freebsd-native.h#4 integrate
... //depot/projects/ia64/sbin/fsck_ffs/fsutil.c#4 integrate
... //depot/projects/ia64/sbin/fsck_ffs/pass5.c#4 integrate
... //depot/projects/ia64/sys/conf/kmod.mk#8 integrate
... //depot/projects/ia64/sys/dev/isp/isp.c#7 integrate
... //depot/projects/ia64/sys/dev/mii/acphy.c#4 integrate
... //depot/projects/ia64/sys/dev/mii/qsphy.c#4 integrate
... //depot/projects/ia64/sys/dev/tx/if_tx.c#2 integrate
... //depot/projects/ia64/sys/i386/acpica/Makefile#2 integrate
... //depot/projects/ia64/sys/i386/acpica/genwakecode.sh#1 branch
... //depot/projects/ia64/sys/i386/conf/NOTES#14 integrate
... //depot/projects/ia64/sys/ia64/ia64/mca.c#2 integrate
... //depot/projects/ia64/sys/ia64/ia64/mp_machdep.c#12 integrate
... //depot/projects/ia64/sys/kern/kern_descrip.c#17 integrate
... //depot/projects/ia64/sys/kern/kern_malloc.c#9 integrate
... //depot/projects/ia64/sys/kern/kern_sig.c#11 integrate
... //depot/projects/ia64/sys/kern/subr_log.c#2 integrate
... //depot/projects/ia64/sys/kern/sys_pipe.c#12 integrate
... //depot/projects/ia64/sys/kern/tty.c#9 integrate
... //depot/projects/ia64/sys/kern/uipc_socket.c#10 integrate
... //depot/projects/ia64/sys/kern/uipc_socket2.c#8 integrate
... //depot/projects/ia64/sys/net/bpf.c#7 integrate
... //depot/projects/ia64/sys/net/if_tap.c#8 integrate
... //depot/projects/ia64/sys/net/if_tun.c#5 integrate
... //depot/projects/ia64/sys/net/rtsock.c#6 integrate
... //depot/projects/ia64/sys/netinet/accf_data.c#3 integrate
... //depot/projects/ia64/sys/netinet/accf_http.c#3 integrate
... //depot/projects/ia64/sys/netinet/tcp_input.c#11 integrate
... //depot/projects/ia64/sys/netkey/keysock.c#6 integrate
... //depot/projects/ia64/sys/sys/proc.h#14 integrate
... //depot/projects/ia64/sys/sys/signalvar.h#6 integrate
... //depot/projects/ia64/sys/sys/socketvar.h#12 integrate
... //depot/projects/ia64/sys/vm/uma_core.c#12 integrate
... //depot/projects/ia64/sys/vm/uma_dbg.c#2 integrate
... //depot/projects/ia64/sys/vm/uma_dbg.h#2 integrate
... //depot/projects/ia64/sys/vm/vm_map.c#11 integrate
... //depot/projects/ia64/sys/vm/vm_map.h#9 integrate
... //depot/projects/ia64/usr.bin/m4/Makefile#3 integrate
... //depot/projects/ia64/usr.bin/m4/eval.c#3 integrate
... //depot/projects/ia64/usr.bin/m4/expr.c#4 integrate
... //depot/projects/ia64/usr.bin/m4/gnum4.c#2 integrate
... //depot/projects/ia64/usr.bin/m4/look.c#3 integrate
... //depot/projects/ia64/usr.bin/m4/main.c#3 integrate
... //depot/projects/ia64/usr.bin/m4/misc.c#3 integrate
... //depot/projects/ia64/usr.bin/m4/trace.c#2 integrate
... //depot/projects/ia64/usr.bin/xargs/strnsubst.c#2 integrate
... //depot/projects/ia64/usr.bin/xargs/xargs.c#7 integrate
... //depot/projects/ia64/usr.sbin/ppp/command.c#6 integrate
... //depot/projects/ia64/usr.sbin/ppp/fsm.c#4 integrate
... //depot/projects/ia64/usr.sbin/ppp/lcp.c#5 integrate

Differences ...

==== //depot/projects/ia64/contrib/gcc.295/config/i386/freebsd.h#5 (text+ko) ====

@@ -1,5 +1,5 @@
 /* Definitions for Intel 386 running FreeBSD with either a.out or ELF format
-   Copyright (C) 1996-2000 Free Software Foundation, Inc.
+   Copyright (C) 1996, 2000, 2002 Free Software Foundation, Inc.
    Contributed by Eric Youngdale.
    Modified for stabs-in-ELF by H.J. Lu.
    Adapted from GNU/Linux version by John Polstra.
@@ -23,7 +23,7 @@
 the Free Software Foundation, 59 Temple Place - Suite 330,
 Boston, MA 02111-1307, USA.  */
 
-/* $FreeBSD: src/contrib/gcc.295/config/i386/freebsd.h,v 1.43 2002/04/24 04:21:41 obrien Exp $ */
+/* $FreeBSD: src/contrib/gcc.295/config/i386/freebsd.h,v 1.44 2002/05/01 19:20:37 obrien Exp $ */
 
 #undef  CPP_PREDEFINES
 #define CPP_PREDEFINES 							\
@@ -38,7 +38,7 @@
 #undef  ASM_SPEC
 #define ASM_SPEC	"%{v*: -v} %{maout: %{fpic:-k} %{fPIC:-k}}"
 
-#undef  ASM_FINAL_SPEC 
+#undef  ASM_FINAL_SPEC
 #define ASM_FINAL_SPEC	"%|"
 
 /* Provide a LINK_SPEC appropriate for FreeBSD.  Here we provide support
@@ -49,9 +49,6 @@
    have the time to search for those flags. I am sure how to add
    support for -soname shared_object_name. H.J.
 
-   I took out %{v:%{!V:-V}}. It is too much :-(. They can use
-   -Wl,-V.
-
    When the -shared link option is used a final link is not being
    done.  */
 
@@ -64,14 +61,19 @@
     %{assert*} %{R*}} \
   %{!maout: \
     %{Wl,*:%*} \
+    %{v:-V} \
     %{assert*} %{R*} %{rpath*} %{defsym*} \
     %{shared:-Bshareable %{h*} %{soname*}} \
-    %{symbolic:-Bsymbolic} \
     %{!shared: \
       %{!static: \
 	%{rdynamic: -export-dynamic} \
 	%{!dynamic-linker: -dynamic-linker /usr/libexec/ld-elf.so.1}} \
-      %{static:-Bstatic}}}"
+      %{static:-Bstatic}} \
+    %{symbolic:-Bsymbolic}}"
+
+/* Provide a STARTFILE_SPEC appropriate for FreeBSD.  Here we add the magical
+   crtbegin.o file (see crtstuff.c) which provides part of the support for
+   getting C++ file-scope static object constructed before entering `main'.  */
 
 #undef STARTFILE_SPEC
 #define STARTFILE_SPEC "\
@@ -86,10 +88,12 @@
       %{!pg: \
 	%{p:gcrt1.o%s} \
 	%{!p:crt1.o%s}}} \
-    crti.o%s %{!shared:crtbegin.o%s} %{shared:crtbeginS.o%s}}"
+    crti.o%s \
+    %{!shared:crtbegin.o%s} \
+    %{shared:crtbeginS.o%s}}"
 
 /* Provide an ENDFILE_SPEC appropriate for FreeBSD/i386.  Here we tack on our
-   own magical crtend.o file (compare w/crtstuff.c) which provides part of the
+   own magical crtend.o file (see crtstuff.c) which provides part of the
    support for getting C++ file-scope static object constructed before
    entering `main', followed by the normal "finalizer" file, `crtn.o'.  */
 
@@ -102,20 +106,23 @@
 
 /************************[  Target stuff  ]***********************************/
 
-/* Define the actual types of some ANSI-mandated types.  
+/* Define the actual types of some ANSI-mandated types.
    Needs to agree with <machine/ansi.h>.  GCC defaults come from c-decl.c,
    c-common.c, and config/<arch>/<arch>.h.  */
 
-#undef SIZE_TYPE
+#undef  SIZE_TYPE
 #define SIZE_TYPE	"unsigned int"
- 
-#undef PTRDIFF_TYPE
+
+#undef  PTRDIFF_TYPE
 #define PTRDIFF_TYPE	"int"
 
+#undef  WCHAR_TYPE_SIZE
+#define WCHAR_TYPE_SIZE	BITS_PER_WORD
+
 /* This is the pseudo-op used to generate a 32-bit word of data with a
    specific value in some section.  */
 
-#undef INT_ASM_OP
+#undef  INT_ASM_OP
 #define INT_ASM_OP	".long"
 
 /* Biggest alignment supported by the object file format of this
@@ -151,27 +158,23 @@
 #define TARGET_DEFAULT \
   (MASK_80387 | MASK_IEEE_FP | MASK_FLOAT_RETURNS | MASK_NO_FANCY_MATH_387)
 
-/* Prefix for internally generated assembler labels.  If we aren't using 
-   underscores, we are using prefix `.'s to identify labels that should  
-   be ignored, as in `i386/gas.h' --karl@cs.umb.edu  */                 
-#undef  LPREFIX
-#define LPREFIX ((TARGET_UNDERSCORES) ? "L" : ".L")
+/* Don't default to pcc-struct-return, we want to retain compatibility with
+   older gcc versions AND pcc-struct-return is nonreentrant.
+   (even though the SVR4 ABI for the i386 says that records and unions are
+   returned in memory).  */
+
+#undef  DEFAULT_PCC_STRUCT_RETURN
+#define DEFAULT_PCC_STRUCT_RETURN 0
 
 /* The a.out tools do not support "linkonce" sections. */
 #undef  SUPPORTS_ONE_ONLY
 #define SUPPORTS_ONE_ONLY	TARGET_ELF
 
-/* Enable alias attribute support.  */
-#undef  SET_ASM_OP
-#define SET_ASM_OP		".set"
-
-/* The a.out tools do not support "Lscope" .stabs symbols. */
-#undef  NO_DBX_FUNCTION_END
-#define NO_DBX_FUNCTION_END	TARGET_AOUT
-
-/* In ELF, the function stabs come first, before the relative offsets.  */
-#undef  DBX_FUNCTION_FIRST
-#define DBX_CHECK_FUNCTION_FIRST TARGET_ELF
+/* Prefix for internally generated assembler labels.  If we aren't using
+   underscores, we are using prefix `.'s to identify labels that should
+   be ignored, as in `i386/gas.h' --karl@cs.umb.edu  */
+#undef  LPREFIX
+#define LPREFIX ((TARGET_UNDERSCORES) ? "L" : ".L")
 
 /* supply our own hook for calling __main() from main() */
 #undef  INVOKE__main
@@ -255,11 +258,19 @@
 
 /************************[  Assembler stuff  ]********************************/
 
+/* Override the default comment-starter of "/" from unix.h.  */
+#undef  ASM_COMMENT_START
+#define ASM_COMMENT_START "#"
+
 #undef  ASM_APP_ON
 #define ASM_APP_ON	"#APP\n"
 
 #undef  ASM_APP_OFF
-#define ASM_APP_OFF	"#NO_APP\n" 
+#define ASM_APP_OFF	"#NO_APP\n"
+
+/* Enable alias attribute support.  */
+#undef  SET_ASM_OP
+#define SET_ASM_OP	".set"
 
 /* This is how to begin an assembly language file.
    The .file command should always begin the output.
@@ -274,8 +285,8 @@
   } while (0)
 
 /* This is how to store into the string BUF
-   the symbol_ref name of an internal numbered label where      
-   PREFIX is the class of label and NUM is the number within the class.  
+   the symbol_ref name of an internal numbered label where
+   PREFIX is the class of label and NUM is the number within the class.
    This is suitable for output with `assemble_name'.  */
 #undef	ASM_GENERATE_INTERNAL_LABEL
 #define ASM_GENERATE_INTERNAL_LABEL(BUF, PREFIX, NUMBER)		\
@@ -405,7 +416,6 @@
       }									\
   } while (0)
 
-
 #undef  ASM_OUTPUT_SOURCE_LINE
 #define ASM_OUTPUT_SOURCE_LINE(FILE, LINE)				\
   do {									\
@@ -503,10 +513,10 @@
   } while (0)
 
 /* Switch into a generic section.
- 
+
    We make the section read-only and executable for a function decl,
    read-only for a const data decl, and writable for a non-const data decl.
- 
+
    If the section has already been defined, we must not
    emit the attributes here. The SVR4 assembler does not
    recognize section redefinitions.
@@ -666,13 +676,21 @@
    some don't.
 
    *OLD* GAS requires the %cl argument, so override i386/unix.h. */
-      
+
 #undef  AS3_SHIFT_DOUBLE
 #define AS3_SHIFT_DOUBLE(a,b,c,d)	AS3 (a,b,c,d)
 
 
 /************************[  Debugger stuff  ]*********************************/
 
+/* The a.out tools do not support "Lscope" .stabs symbols. */
+#undef  NO_DBX_FUNCTION_END
+#define NO_DBX_FUNCTION_END	TARGET_AOUT
+
+/* In ELF, the function stabs come first, before the relative offsets.  */
+#undef  DBX_FUNCTION_FIRST
+#define DBX_CHECK_FUNCTION_FIRST TARGET_ELF
+
 /* Copy this from the svr4 specifications... */
 /* Define the register numbers to be used in Dwarf debugging information.
    The SVR4 reference port C compiler uses the following register numbers

==== //depot/projects/ia64/contrib/gcc.295/cp/g++spec.c#2 (text+ko) ====

@@ -18,6 +18,8 @@
 the Free Software Foundation, 59 Temple Place - Suite 330,
 Boston, MA 02111-1307, USA.  */
 
+/* $FreeBSD: src/contrib/gcc.295/cp/g++spec.c,v 1.3 2002/05/01 20:04:18 obrien Exp $ */
+
 #include "config.h"
 #include "system.h"
 
@@ -31,10 +33,16 @@
 #ifndef MATH_LIBRARY
 #define MATH_LIBRARY "-lm"
 #endif
+#ifndef MATH_LIBRARY_PROFILE
+#define MATH_LIBRARY_PROFILE "-lm"
+#endif
 
 #ifndef LIBSTDCXX
 #define LIBSTDCXX "-lstdc++"
 #endif
+#ifndef LIBSTDCXX_PROFILE
+#define LIBSTDCXX_PROFILE "-lstdc++"
+#endif
 
 void
 lang_specific_driver (fn, in_argc, in_argv, in_added_libraries)
@@ -45,6 +53,9 @@
 {
   int i, j;
 
+  /* If non-zero, the user gave us the `-p' or `-pg' flag.  */ 
+  int saw_profile_flag = 0;
+
   /* If non-zero, the user gave us the `-v' flag.  */ 
   int saw_verbose_flag = 0;
 
@@ -135,6 +146,8 @@
 	    }
 	  else if (strcmp (argv[i], "-lc") == 0)
 	    args[i] |= WITHLIBC;
+	  else if (strcmp (argv[i], "-pg") == 0 || strcmp (argv[i], "-p") == 0)
+	    saw_profile_flag++;
 	  else if (strcmp (argv[i], "-v") == 0)
 	    {
 	      saw_verbose_flag = 1;
@@ -236,14 +249,14 @@
   /* Add `-lstdc++' if we haven't already done so.  */
   if (library)
     {
-      arglist[j++] = LIBSTDCXX;
+      arglist[j++] = saw_profile_flag ? LIBSTDCXX_PROFILE : LIBSTDCXX;
       added_libraries++;
     }
   if (saw_math)
     arglist[j++] = saw_math;
   else if (library && need_math)
     {
-      arglist[j++] = MATH_LIBRARY;
+      arglist[j++] = saw_profile_flag ? MATH_LIBRARY_PROFILE : MATH_LIBRARY;
       added_libraries++;
     }
   if (saw_libc)

==== //depot/projects/ia64/contrib/gcc.295/integrate.c#2 (text+ko) ====

@@ -19,6 +19,8 @@
 the Free Software Foundation, 59 Temple Place - Suite 330,
 Boston, MA 02111-1307, USA.  */
 
+/* $FreeBSD: src/contrib/gcc.295/integrate.c,v 1.2 2002/05/01 19:40:55 obrien Exp $ */
+
 
 #include "config.h"
 #include "system.h"
@@ -1608,6 +1610,20 @@
   if (FUNCTION_FLAGS (header) & FUNCTION_FLAGS_NEEDS_CONTEXT)
     static_chain_value = lookup_static_chain (fndecl);
 
+  /* If the inline function has these flags sets, that means that 
+     coresponding global flags should be set for this function. */
+  if (FUNCTION_FLAGS (header) & FUNCTION_FLAGS_CALLS_SETJMP)
+    current_function_calls_setjmp = 1;
+
+  if (FUNCTION_FLAGS (header) & FUNCTION_FLAGS_CALLS_LONGJMP)
+    current_function_calls_longjmp = 1;
+
+  if (FUNCTION_FLAGS (header) & FUNCTION_FLAGS_HAS_NONLOCAL_LABEL)
+    current_function_has_nonlocal_label = 1;
+
+  if (FUNCTION_FLAGS (header) & FUNCTION_FLAGS_USES_CONST_POOL)
+    current_function_uses_const_pool = 1;
+
   if (GET_CODE (parm_insns) == NOTE
       && NOTE_LINE_NUMBER (parm_insns) > 0)
     {

==== //depot/projects/ia64/contrib/gcc.295/stmt.c#2 (text+ko) ====

@@ -19,6 +19,8 @@
 the Free Software Foundation, 59 Temple Place - Suite 330,
 Boston, MA 02111-1307, USA.  */
 
+/* $FreeBSD: src/contrib/gcc.295/stmt.c,v 1.2 2002/05/01 19:40:55 obrien Exp $ */
+
 
 /* This file handles the generation of rtl code from tree structure
    above the level of expressions, using subroutines in exp*.c and emit-rtl.c.
@@ -4027,6 +4029,10 @@
 		    cleanup = protect_with_terminate (cleanup);
 		    expand_eh_region_end (cleanup);
 		  }
+		else 
+		  {
+		    do_pending_stack_adjust();
+		  }
 	      }
 
 	    if (reachable)

==== //depot/projects/ia64/crypto/openssh/ssh_config#4 (text+ko) ====

@@ -1,5 +1,5 @@
 #	$OpenBSD: ssh_config,v 1.12 2002/01/16 17:55:33 stevesk Exp $
-#	$FreeBSD: src/crypto/openssh/ssh_config,v 1.11 2002/04/02 21:53:54 des Exp $
+# $FreeBSD: src/crypto/openssh/ssh_config,v 1.12 2002/05/01 22:39:53 obrien Exp $
 
 # This is the ssh client system-wide configuration file.  See ssh(1)
 # for more information.  This file provides defaults for users, and

==== //depot/projects/ia64/crypto/openssh/sshd_config#5 (text+ko) ====

@@ -1,5 +1,5 @@
 #	$OpenBSD: src/usr.bin/ssh/sshd_config,v 1.48 2002/02/19 02:50:59 deraadt Exp $
-#	$FreeBSD: src/crypto/openssh/sshd_config,v 1.21 2002/04/25 16:50:35 des Exp $
+# $FreeBSD: src/crypto/openssh/sshd_config,v 1.22 2002/05/01 22:39:53 obrien Exp $
 
 # This is the sshd server system-wide configuration file.  See sshd(8)
 # for more information.

==== //depot/projects/ia64/gnu/usr.bin/cc/cc_tools/freebsd-native.h#4 (text+ko) ====

@@ -1,4 +1,4 @@
-/* $FreeBSD: src/gnu/usr.bin/cc/cc_tools/freebsd-native.h,v 1.14 2002/04/04 19:36:33 obrien Exp $ */
+/* $FreeBSD: src/gnu/usr.bin/cc/cc_tools/freebsd-native.h,v 1.15 2002/05/01 19:19:22 obrien Exp $ */
 
 /* FREEBSD_NATIVE is defined when gcc is integrated into the FreeBSD
    source tree so it can be configured appropriately without using
@@ -42,7 +42,9 @@
 
 /* For the native system compiler, we actually build libgcc in a profiled
    version.  So we should use it with -pg.  */
-#define LIBGCC_SPEC "%{!pg: -lgcc} %{pg: -lgcc_p}"
+#define LIBGCC_SPEC		"%{!pg: -lgcc} %{pg: -lgcc_p}"
+#define LIBSTDCXX_PROFILE	"-lstdc++_p"
+#define MATH_LIBRARY_PROFILE	"-lm_p"
 
 /* FreeBSD is 4.4BSD derived */
 #define bsd4_4

==== //depot/projects/ia64/sbin/fsck_ffs/fsutil.c#4 (text+ko) ====

@@ -36,7 +36,7 @@
 static const char sccsid[] = "@(#)utilities.c	8.6 (Berkeley) 5/19/95";
 #endif
 static const char rcsid[] =
-  "$FreeBSD: src/sbin/fsck_ffs/fsutil.c,v 1.10 2002/03/20 22:57:09 imp Exp $";
+  "$FreeBSD: src/sbin/fsck_ffs/fsutil.c,v 1.11 2002/05/02 01:03:06 mckusick Exp $";
 #endif /* not lint */
 
 #include <sys/param.h>
@@ -195,7 +195,6 @@
 	getblk(bp, blkno, size);
 	/* fall through */
 foundit:
-	totalreads++;
 	bp->b_prev->b_next = bp->b_next;
 	bp->b_next->b_prev = bp->b_prev;
 	bp->b_prev = &bufhead;
@@ -211,6 +210,7 @@
 {
 	ufs_daddr_t dblk;
 
+	totalreads++;
 	dblk = fsbtodb(&sblock, blk);
 	if (bp->b_bno != dblk) {
 		flush(fswritefd, bp);

==== //depot/projects/ia64/sbin/fsck_ffs/pass5.c#4 (text+ko) ====

@@ -36,7 +36,7 @@
 static const char sccsid[] = "@(#)pass5.c	8.9 (Berkeley) 4/28/95";
 #endif
 static const char rcsid[] =
-  "$FreeBSD: src/sbin/fsck_ffs/pass5.c,v 1.25 2002/03/20 22:57:09 imp Exp $";
+  "$FreeBSD: src/sbin/fsck_ffs/pass5.c,v 1.26 2002/05/02 01:03:06 mckusick Exp $";
 #endif /* not lint */
 
 #include <sys/param.h>
@@ -186,7 +186,7 @@
 			dmax = fs->fs_size;
 		newcg->cg_time = cg->cg_time;
 		newcg->cg_cgx = c;
-		if (c == fs->fs_ncg - 1)
+		if (c == fs->fs_ncg - 1 && fs->fs_ncyl % fs->fs_cpg > 0)
 			newcg->cg_ncyl = fs->fs_ncyl % fs->fs_cpg;
 		else
 			newcg->cg_ncyl = fs->fs_cpg;

==== //depot/projects/ia64/sys/conf/kmod.mk#8 (text+ko) ====

@@ -1,5 +1,5 @@
 #	From: @(#)bsd.prog.mk	5.26 (Berkeley) 6/25/91
-# $FreeBSD: src/sys/conf/kmod.mk,v 1.122 2002/05/01 03:28:14 obrien Exp $
+# $FreeBSD: src/sys/conf/kmod.mk,v 1.123 2002/05/01 19:24:26 imp Exp $
 #
 # The include file <bsd.kmod.mk> handles installing Kernel Loadable Device
 # drivers (KLD's).
@@ -170,6 +170,9 @@
 .endif
 .endif
 
+.if !exists(/usr/sbin/kldxref)
+NO_XREF=yes
+.endif
 
 _ILINKS=@ machine
 
@@ -257,9 +260,7 @@
 	done; true
 .endif
 .if !defined(NO_XREF)
-	@echo "FAILURES HERE ARE OK"
 	-kldxref ${DESTDIR}${KMODDIR}
-	@echo "END OF SECTION WHERE FAILURES ARE OK"
 .endif
 .endif
 
@@ -345,5 +346,4 @@
 .endif
 
 .include <bsd.obj.mk>
-
 .include <bsd.kern.mk>

==== //depot/projects/ia64/sys/dev/isp/isp.c#7 (text+ko) ====

@@ -1,4 +1,4 @@
-/* $FreeBSD: src/sys/dev/isp/isp.c,v 1.92 2002/04/16 19:55:35 mjacob Exp $ */
+/* $FreeBSD: src/sys/dev/isp/isp.c,v 1.93 2002/05/01 21:58:36 mjacob Exp $ */
 /*
  * Machine and OS Independent (well, as best as possible)
  * code for the Qlogic ISP SCSI adapters.
@@ -107,6 +107,8 @@
 static const char sc2[] = "%s CHAN %d TGT %d FLAGS 0x%x 0x%x/0x%x";
 static const char sc3[] = "Generated";
 static const char sc4[] = "NVRAM";
+static const char bun[] =
+    "bad underrun for %d.%d (count %d, resid %d, status %s)";
 
 /*
  * Local function prototypes.
@@ -4397,11 +4399,25 @@
 		break;
 
 	case RQCS_DATA_UNDERRUN:
+	{
+		if (IS_FC(isp)) {
+			int ru_marked = (sp->req_scsi_status & RQCS_RU) != 0;
+			if (!ru_marked || sp->req_resid > XS_XFRLEN(xs)) {
+				isp_prt(isp, ISP_LOGWARN, bun, XS_TGT(xs),
+				    XS_LUN(xs), XS_XFRLEN(xs), sp->req_resid,
+				    (ru_marked)? "marked" : "not marked");
+				if (XS_NOERR(xs)) {
+					XS_SETERR(xs, HBA_BOTCH);
+				}
+				return;
+			}
+		}
 		XS_RESID(xs) = sp->req_resid;
 		if (XS_NOERR(xs)) {
 			XS_SETERR(xs, HBA_NOERROR);
 		}
 		return;
+	}
 
 	case RQCS_XACT_ERR1:
 		isp_prt(isp, ISP_LOGERR, xact1, XS_CHANNEL(xs),
@@ -4424,8 +4440,8 @@
 
 	case RQCS_QUEUE_FULL:
 		isp_prt(isp, ISP_LOGDEBUG0,
-		    "internal queues full for %d.%d.%d status 0x%x", XS_TGT(xs),
-		    XS_LUN(xs), XS_CHANNEL(xs), *XS_STSP(xs));
+		    "internal queues full for %d.%d.%d status 0x%x",
+		    XS_CHANNEL(xs), XS_TGT(xs), XS_LUN(xs), *XS_STSP(xs));
 
 		/*
 		 * If QFULL or some other status byte is set, then this
@@ -4507,13 +4523,14 @@
 		 */
 		if ((sp->req_completion_status & 0xff) == RQCS_PORT_UNAVAILABLE)
 			isp_prt(isp, ISP_LOGINFO,
-			    "Port Unavailable for target %d", XS_TGT(xs));
+			    "port unavailable for target %d", XS_TGT(xs));
 		else
 			isp_prt(isp, ISP_LOGINFO,
 			    "port logout for target %d", XS_TGT(xs));
 		/*
 		 * If we're on a local loop, force a LIP (which is overkill)
-		 * to force a re-login of this unit.
+		 * to force a re-login of this unit. If we're on fabric,
+		 * then we'll have to relogin as a matter of course.
 		 */
 		if (FCPARAM(isp)->isp_topo == TOPO_NL_PORT ||
 		    FCPARAM(isp)->isp_topo == TOPO_FL_PORT) {
@@ -4933,8 +4950,8 @@
 	ISPOPMAP(0x00, 0x00),	/* 0x58: */
 	ISPOPMAP(0x00, 0x00),	/* 0x59: */
 	ISPOPMAP(0x00, 0x00),	/* 0x5a: */
-	ISPOPMAP(0x00, 0x00),	/* 0x5b: */
-	ISPOPMAP(0x00, 0x00),	/* 0x5c: */
+	ISPOPMAP(0x03, 0x01),	/* 0x5b: MBOX_DRIVER_HEARTBEAT */
+	ISPOPMAP(0xcf, 0x01),	/* 0x5c: MBOX_FW_HEARTBEAT */
 	ISPOPMAP(0x07, 0x03),	/* 0x5d: MBOX_GET_SET_DATA_RATE */
 	ISPOPMAP(0x00, 0x00),	/* 0x5e: */
 	ISPOPMAP(0x00, 0x00),	/* 0x5f: */

==== //depot/projects/ia64/sys/dev/mii/acphy.c#4 (text+ko) ====

@@ -89,7 +89,7 @@
 
 #if !defined(lint)
 static const char rcsid[] =
-  "$FreeBSD: src/sys/dev/mii/acphy.c,v 1.7 2002/04/29 13:07:31 phk Exp $";
+  "$FreeBSD: src/sys/dev/mii/acphy.c,v 1.8 2002/05/01 19:15:54 semenu Exp $";
 #endif
 
 static int acphy_probe		(device_t);
@@ -176,33 +176,31 @@
 	struct ifmedia_entry *ife = mii->mii_media.ifm_cur;
 	int reg;
 
+	/*
+	 * If we're not selected, then do nothing, just isolate and power
+	 * down, if changing media.
+	 */
+	if (IFM_INST(ife->ifm_media) != sc->mii_inst) {
+		if (cmd == MII_MEDIACHG) {
+			reg = PHY_READ(sc, MII_BMCR);
+			PHY_WRITE(sc, MII_BMCR, reg | BMCR_ISO | BMCR_PDOWN);
+		}
+
+		return (0);
+	}
+
 	switch (cmd) {
 	case MII_POLLSTAT:
-		/*
-		 * If we're not polling our PHY instance, just return.
-		 */
-		if (IFM_INST(ife->ifm_media) != sc->mii_inst)
-			return (0);
 		break;
 
 	case MII_MEDIACHG:
 		/*
-		 * If the media indicates a different PHY instance,
-		 * isolate ourselves.
-		 */
-		if (IFM_INST(ife->ifm_media) != sc->mii_inst) {
-			reg = PHY_READ(sc, MII_BMCR);
-			PHY_WRITE(sc, MII_BMCR, reg | BMCR_ISO | BMCR_PDOWN);
-			return (0);
-		}
-
-		/*
 		 * If the interface is not up, don't do anything.
 		 */
 		if ((mii->mii_ifp->if_flags & IFF_UP) == 0)
 			break;
 
-		/* Wake & deisolate up is needed */
+		/* Wake & deisolate up if necessary */
 		reg = PHY_READ(sc, MII_BMCR);
 		if (reg & (BMCR_ISO | BMCR_PDOWN)) 
 			PHY_WRITE(sc, MII_BMCR, reg & ~(BMCR_ISO | BMCR_PDOWN));
@@ -230,12 +228,6 @@
 
 	case MII_TICK:
 		/*
-		 * If we're not currently selected, just return.
-		 */
-		if (IFM_INST(ife->ifm_media) != sc->mii_inst)
-			return (0);
-
-		/*
 		 * Is the interface even up?
 		 */
 		if ((mii->mii_ifp->if_flags & IFF_UP) == 0)
@@ -248,23 +240,8 @@
 			break;
 
 		/*
-		 * check for link.
-		 * Read the status register twice; BMSR_LINK is latch-low.
+		 * This PHY's autonegotiation doesn't need to be kicked.
 		 */
-		reg = PHY_READ(sc, MII_BMSR) | PHY_READ(sc, MII_BMSR);
-		if (reg & BMSR_LINK)
-			break;
-
-		/*
-		 * Only retry autonegotiation every 5 seconds.
-		 */
-		if (++sc->mii_ticks != 5)
-			return (0);
-
-		sc->mii_ticks = 0;
-		acphy_reset(sc);
-		if (mii_phy_auto(sc, 0) == EJUSTRETURN)
-			return (0);
 		break;
 	}
 
@@ -308,8 +285,7 @@
 			mii->mii_media_active |= IFM_NONE;
 			return;
 		}
-		diag = PHY_READ(sc, MII_ACPHY_DIAG) |
-		    PHY_READ(sc, MII_ACPHY_DIAG);
+		diag = PHY_READ(sc, MII_ACPHY_DIAG);
 		if (diag & AC_DIAG_SPEED)
 			mii->mii_media_active |= IFM_100_TX;
 		else

==== //depot/projects/ia64/sys/dev/mii/qsphy.c#4 (text+ko) ====

@@ -93,7 +93,7 @@
 
 #if !defined(lint)
 static const char rcsid[] =
-  "$FreeBSD: src/sys/dev/mii/qsphy.c,v 1.6 2002/04/29 13:07:32 phk Exp $";
+  "$FreeBSD: src/sys/dev/mii/qsphy.c,v 1.7 2002/05/01 19:15:54 semenu Exp $";
 #endif
 
 static int qsphy_probe		(device_t);
@@ -180,27 +180,25 @@
 	struct ifmedia_entry *ife = mii->mii_media.ifm_cur;
 	int reg;
 
+	/*
+	 * If we're not selected, then do nothing, just isolate, if
+	 * changing media.
+	 */
+	if (IFM_INST(ife->ifm_media) != sc->mii_inst) {
+		if (cmd == MII_MEDIACHG) {
+			reg = PHY_READ(sc, MII_BMCR);
+			PHY_WRITE(sc, MII_BMCR, reg | BMCR_ISO);
+		}
+
+		return (0);
+	}
+
 	switch (cmd) {
 	case MII_POLLSTAT:
-		/*
-		 * If we're not polling our PHY instance, just return.
-		 */
-		if (IFM_INST(ife->ifm_media) != sc->mii_inst)
-			return (0);
 		break;
 
 	case MII_MEDIACHG:
 		/*
-		 * If the media indicates a different PHY instance,
-		 * isolate ourselves.
-		 */
-		if (IFM_INST(ife->ifm_media) != sc->mii_inst) {
-			reg = PHY_READ(sc, MII_BMCR);
-			PHY_WRITE(sc, MII_BMCR, reg | BMCR_ISO);
-			return (0);
-		}
-
-		/*
 		 * If the interface is not up, don't do anything.
 		 */
 		if ((mii->mii_ifp->if_flags & IFF_UP) == 0)
@@ -229,12 +227,6 @@
 
 	case MII_TICK:
 		/*
-		 * If we're not currently selected, just return.
-		 */
-		if (IFM_INST(ife->ifm_media) != sc->mii_inst)
-			return (0);
-
-		/*
 		 * Is the interface even up?
 		 */
 		if ((mii->mii_ifp->if_flags & IFF_UP) == 0)
@@ -247,23 +239,8 @@
 			break;
 
 		/*
-		 * check for link.
-		 * Read the status register twice; BMSR_LINK is latch-low.
+		 * This PHY's autonegotiation doesn't need to be kicked.
 		 */
-		reg = PHY_READ(sc, MII_BMSR) | PHY_READ(sc, MII_BMSR);
-		if (reg & BMSR_LINK)
-			break;
-
-		/*
-		 * Only retry autonegotiation every 5 seconds.
-		 */
-		if (++sc->mii_ticks != 5)
-			return (0);
-
-		sc->mii_ticks = 0;
-		qsphy_reset(sc);
-		if (mii_phy_auto(sc, 0) == EJUSTRETURN)
-			return (0);
 		break;
 	}
 
@@ -280,7 +257,6 @@
 	struct mii_softc *sc;
 {
 	struct mii_data *mii = sc->mii_pdata;
-	struct ifmedia_entry *ife = mii->mii_media.ifm_cur;
 	int bmsr, bmcr, pctl;
 
 	mii->mii_media_status = IFM_AVALID;
@@ -301,37 +277,31 @@
 	if (bmcr & BMCR_LOOP)
 		mii->mii_media_active |= IFM_LOOP;
 
-	if (bmcr & BMCR_AUTOEN) {
-		if ((bmsr & BMSR_ACOMP) == 0) {
-			/* Erg, still trying, I guess... */
-			mii->mii_media_active |= IFM_NONE;
-			return;
-		}
-		pctl = PHY_READ(sc, MII_QSPHY_PCTL) |
-		    PHY_READ(sc, MII_QSPHY_PCTL);
-		switch (pctl & PCTL_OPMASK) {
-		case PCTL_10_T:
-			mii->mii_media_active |= IFM_10_T;
-			break;
-		case PCTL_10_T_FDX:
-			mii->mii_media_active |= IFM_10_T|IFM_FDX;
-			break;
-		case PCTL_100_TX:
-			mii->mii_media_active |= IFM_100_TX;
-			break;
-		case PCTL_100_TX_FDX:
-			mii->mii_media_active |= IFM_100_TX|IFM_FDX;
-			break;
-		case PCTL_100_T4:
-			mii->mii_media_active |= IFM_100_T4;
-			break;
-		default:
-			/* Erg... this shouldn't happen. */
-			mii->mii_media_active |= IFM_NONE;
-			break;
-		}
-	} else
-		mii->mii_media_active = ife->ifm_media;
+	pctl = PHY_READ(sc, MII_QSPHY_PCTL);
+	switch (pctl & PCTL_OPMASK) {
+	case PCTL_10_T:
+		mii->mii_media_active |= IFM_10_T;
+		break;
+	case PCTL_10_T_FDX:
+		mii->mii_media_active |= IFM_10_T|IFM_FDX;
+		break;
+	case PCTL_100_TX:
+		mii->mii_media_active |= IFM_100_TX;
+		break;
+	case PCTL_100_TX_FDX:
+		mii->mii_media_active |= IFM_100_TX|IFM_FDX;
+		break;
+	case PCTL_100_T4:
+		mii->mii_media_active |= IFM_100_T4;
+		break;
+	case PCTL_AN:
+		mii->mii_media_active |= IFM_NONE;
+		break;
+	default:
+		/* Erg... this shouldn't happen. */
+		mii->mii_media_active |= IFM_NONE;
+		break;
+	}
 }
 
 static void

==== //depot/projects/ia64/sys/dev/tx/if_tx.c#2 (text+ko) ====

@@ -1,5 +1,5 @@
 /*	$OpenBSD: if_tx.c,v 1.9.2.1 2000/02/21 22:29:13 niklas Exp $	*/
-/* $FreeBSD: src/sys/dev/tx/if_tx.c,v 1.56 2002/04/25 18:16:15 semenu Exp $ */
+/* $FreeBSD: src/sys/dev/tx/if_tx.c,v 1.57 2002/05/01 19:23:04 semenu Exp $ */
 
 /*-
  * Copyright (c) 1997 Semen Ustimenko (semenu@FreeBSD.org)
@@ -140,6 +140,7 @@
 static int epic_common_attach(epic_softc_t *);
 static void epic_ifstart(struct ifnet *);
 static void epic_ifwatchdog(struct ifnet *);
+static void epic_stats_update(epic_softc_t *);
 static int epic_init(epic_softc_t *);
 static void epic_stop(epic_softc_t *);
 static void epic_rx_done(epic_softc_t *);
@@ -1149,6 +1150,26 @@
 }
 
 /*
+ * Despite the name of this function, it doesn't update statistics, it only
+ * helps in autonegotiation process.
+ */
+static void
+epic_stats_update(epic_softc_t * sc)
+{
+	struct mii_data * mii;
+	int s;
+
+	s = splimp();
+
+	mii = device_get_softc(sc->miibus);
+	mii_tick(mii);
+
+	sc->stat_ch = timeout((timeout_t *)epic_stats_update, sc, hz);
+
+	splx(s);
+}
+

>>> TRUNCATED FOR MAIL (1000 lines) <<<

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe p4-projects" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200205020332.g423WNV65224>