rpms/gcc/devel README.libgcjwebplugin.so, NONE, 1.1 gcc41-pr28046.patch, NONE, 1.1 .cvsignore, 1.169, 1.170 gcc41.spec, 1.100, 1.101 sources, 1.171, 1.172

fedora-cvs-commits at redhat.com fedora-cvs-commits at redhat.com
Fri Sep 15 09:41:11 UTC 2006


Author: jakub

Update of /cvs/dist/rpms/gcc/devel
In directory cvs.devel.redhat.com:/tmp/cvs-serv6710

Modified Files:
	.cvsignore gcc41.spec sources 
Added Files:
	README.libgcjwebplugin.so gcc41-pr28046.patch 
Log Message:
4.1.1-22


--- NEW FILE README.libgcjwebplugin.so ---
gcjwebplugin is a Firefox plugin for running Java applets.  It is now
included in the libgcj sub-package, though it is not enabled by
default.

GNU Classpath and libgcj's security implementation is under active
development, but it is not ready to be declared secure.  Specifically,
it cannot run untrusted applets safely.

When gcjwebplugin is enabled, it prompts you with a dialog before
loading an applet.  The dialog tells you that a certain URL would like
to load an applet, and asks if you trust the applet.  Be aware though
that this dialog is mostly informative and doesn't provide much
protection:

- http and DNS can be spoofed meaning that the URL named in the
  warning dialog cannot be trusted

- someone could create a browser denial-of-service attack by creating a
  page with hundreds of applet tags, causing gcjwebplugin to create
  warning dialog after warning dialog.  The browser would have to be
  closed to eliminate the latest dialog

- the whitelist is provided as a convenience, but it is unsafe because a
  domain may change hands from a trusted owner to an untrusted owner.
  If that domain is in the whitelist then the warning dialog will not
  appear when loading the new malicious applet.

CURRENTLY GCJWEBPLUGIN RUNS WITH NO SECURITY MANAGER.  THIS MEANS THAT
APPLETS CAN DO ANYTHING A JAVA APPLICATION THAT YOU DOWNLOAD AND RUN
COULD DO.  BE *VERY* CAREFUL WHICH APPLETS YOU RUN.  DO NOT USE
GCJWEBPLUGIN ON YOUR SYSTEM IF YOUR SYSTEM STORES IMPORTANT DATA.
THIS DATA CAN BE DESTROYED OR STOLEN.

The same warning applies to gappletviewer, which also runs with no
security manager (in fact, gcjwebplugin spawns gappletviewer to do the
applet loading).  When run on the command line, gappletviewer issues a
warning on startup and asks you if you want to continue.

Even considering the risks involved, you may still want to try
gcjwebplugin.  GNU Classpath's AWT and Swing implementations are now
sufficiently mature that they're able to run many applets deployed on
the web.  If you're interested in trying gcjwebplugin, you can do so
by creating a symbolic link in ~/.mozilla/plugins like so:

ln -s /usr/lib/gcj-4.1.1/libgcjwebplugin.so ~/.mozilla/plugins/

Type about:plugins in Firefox's URL bar to confirm that the plugin has
been loaded.  To see gcjwebplugin debugging output, run:

firefox -g

then at the GDB prompt, type

run

Please report bugs in Red Hat Bugzilla: http://bugzilla.redhat.com

gcc41-pr28046.patch:
 c-omp.c                           |    9 +++++++++
 testsuite/g++.dg/gomp/atomic-10.C |   24 ++++++++++++++++++++++++
 testsuite/gcc.dg/gomp/atomic-10.c |   24 ++++++++++++++++++++++++
 3 files changed, 57 insertions(+)

--- NEW FILE gcc41-pr28046.patch ---
2006-09-11  Jakub Jelinek  <jakub at redhat.com>

	PR middle-end/28046
	* c-omp.c (c_finish_omp_atomic): If ADDR is not simple enough,
	wrap it into TARGET_EXPR.

	* gcc.dg/gomp/atomic-10.c: New test.
	* g++.dg/gomp/atomic-10.C: New test.

--- gcc/c-omp.c.jj	2006-08-28 13:00:24.000000000 +0200
+++ gcc/c-omp.c	2006-09-11 21:07:18.000000000 +0200
@@ -116,6 +116,15 @@ c_finish_omp_atomic (enum tree_code code
   if (addr == error_mark_node)
     return error_mark_node;
   addr = save_expr (addr);
+  if (TREE_CODE (addr) != SAVE_EXPR
+      && (TREE_CODE (addr) != ADDR_EXPR
+	  || TREE_CODE (TREE_OPERAND (addr, 0)) != VAR_DECL))
+    {
+      /* Make sure LHS is simple enough so that goa_lhs_expr_p can recognize
+	 it even after unsharing function body.  */
+      tree var = create_tmp_var_raw (TREE_TYPE (addr), NULL);
+      addr = build4 (TARGET_EXPR, TREE_TYPE (addr), var, addr, NULL, NULL);
+    }
   lhs = build_indirect_ref (addr, NULL);
 
   /* There are lots of warnings, errors, and conversions that need to happen
--- gcc/testsuite/g++.dg/gomp/atomic-10.C.jj	2006-09-11 21:17:05.000000000 +0200
+++ gcc/testsuite/g++.dg/gomp/atomic-10.C	2006-09-11 21:19:16.000000000 +0200
@@ -0,0 +1,24 @@
+// PR middle-end/28046
+// { dg-do compile }
+// { dg-options "-fopenmp -fdump-tree-gimple" }
+
+int a[3], b;
+struct C { int x; int y; } c;
+
+int bar (void), *baz (void);
+
+void
+foo (void)
+{
+#pragma omp atomic
+  a[2] += bar ();
+#pragma omp atomic
+  b += bar ();
+#pragma omp atomic
+  c.y += bar ();
+#pragma omp atomic
+  *baz () += bar ();
+}
+
+// { dg-final { scan-tree-dump-times "__sync_fetch_and_add" 4 "gimple" { target i?86-*-* x86_64-*-* ia64-*-* powerpc*-*-* alpha*-*-* } } }
+// { dg-final { cleanup-tree-dump "gimple" } }
--- gcc/testsuite/gcc.dg/gomp/atomic-10.c.jj	2006-09-11 21:16:37.000000000 +0200
+++ gcc/testsuite/gcc.dg/gomp/atomic-10.c	2006-09-11 21:19:27.000000000 +0200
@@ -0,0 +1,24 @@
+/* PR middle-end/28046 */
+/* { dg-do compile } */
+/* { dg-options "-fopenmp -fdump-tree-gimple" } */
+
+int a[3], b;
+struct C { int x; int y; } c;
+
+int bar (void), *baz (void);
+
+void
+foo (void)
+{
+#pragma omp atomic
+  a[2] += bar ();
+#pragma omp atomic
+  b += bar ();
+#pragma omp atomic
+  c.y += bar ();
+#pragma omp atomic
+  *baz () += bar ();
+}
+
+/* { dg-final { scan-tree-dump-times "__sync_fetch_and_add" 4 "gimple" { target i?86-*-* x86_64-*-* ia64-*-* powerpc*-*-* alpha*-*-* } } } */
+/* { dg-final { cleanup-tree-dump "gimple" } } */


Index: .cvsignore
===================================================================
RCS file: /cvs/dist/rpms/gcc/devel/.cvsignore,v
retrieving revision 1.169
retrieving revision 1.170
diff -u -r1.169 -r1.170
--- .cvsignore	8 Sep 2006 15:23:31 -0000	1.169
+++ .cvsignore	15 Sep 2006 09:41:09 -0000	1.170
@@ -1 +1 @@
-gcc-4.1.1-20060908.tar.bz2
+gcc-4.1.1-20060915.tar.bz2


Index: gcc41.spec
===================================================================
RCS file: /cvs/dist/rpms/gcc/devel/gcc41.spec,v
retrieving revision 1.100
retrieving revision 1.101
diff -u -r1.100 -r1.101
--- gcc41.spec	8 Sep 2006 15:23:31 -0000	1.100
+++ gcc41.spec	15 Sep 2006 09:41:09 -0000	1.101
@@ -1,6 +1,6 @@
-%define DATE 20060908
+%define DATE 20060915
 %define gcc_version 4.1.1
-%define gcc_release 21
+%define gcc_release 22
 %define _unpackaged_files_terminate_build 0
 %define multilib_64_archs sparc64 ppc64 s390x x86_64
 %ifarch %{ix86} x86_64 ia64
@@ -29,6 +29,7 @@
 Group: Development/Languages
 Source0: gcc-%{version}-%{DATE}.tar.bz2
 Source1: libgcc_post_upgrade.c
+Source2: README.libgcjwebplugin.so
 URL: http://gcc.gnu.org
 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
 # Need binutils with -pie support >= 2.14.90.0.4-4
@@ -143,6 +144,7 @@
 Patch36: gcc41-pr26026.patch
 Patch37: gcc41-pr28659.patch
 Patch38: gcc41-pr27567.patch
+Patch39: gcc41-pr28046.patch
 
 %define _gnu %{nil}
 %ifarch sparc
@@ -464,6 +466,7 @@
 %patch36 -p0 -b .pr26026~
 %patch37 -p0 -b .pr28659~
 %patch38 -p0 -b .pr27567~
+%patch39 -p0 -b .pr28046~
 
 sed -i -e 's/4\.1\.2/4.1.1/' gcc/BASE-VER gcc/version.c
 sed -i -e 's/" (Red Hat[^)]*)"/" (Red Hat %{version}-%{gcc_release})"/' gcc/version.c
@@ -647,8 +650,8 @@
 	cp -p $i rpm.doc/changelogs/$i
 done
 
-(cd gcc/f; for i in ChangeLog*; do
-	cp -p $i ../../rpm.doc/gfortran/$i.f
+(cd gcc/fortran; for i in ChangeLog*; do
+	cp -p $i ../../rpm.doc/gfortran/$i
 done)
 (cd libgfortran; for i in ChangeLog*; do
 	cp -p $i ../rpm.doc/gfortran/$i.libgfortran
@@ -1416,6 +1419,7 @@
 %{_prefix}/%{_lib}/logging.properties
 %dir %{_prefix}/%{_lib}/gcj-%{version}/classmap.db.d
 %attr(0644,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) %{_prefix}/%{_lib}/gcj-%{version}/classmap.db
+%doc %{SOURCE2}
 
 %files -n libgcj-devel
 %defattr(-,root,root)
@@ -1523,6 +1527,20 @@
 %doc rpm.doc/changelogs/libmudflap/ChangeLog*
 
 %changelog
+* Fri Sep 15 2006 Jakub Jelinek <jakub at redhat.com> 4.1.1-22
+- update from gcc-4_1-branch (-r116778:116958)
+  - PRs ada/21952, ada/29025, c++/26957, fortran/28890, fortran/28923,
+	fortran/28959, libfortran/28890, libfortran/28923, libfortran/28947,
+	middle-end/28493, other/23541, other/26507, rtl-optimization/28243,
+	rtl-optimization/28634, rtl-optimization/28636, rtl-optimization/28726,
+	target/13685, target/26504, target/27537, target/27681, target/28621,
+	target/29006, testsuite/28950, testsuite/29007
+- fix #pragma omp atomic (PR middle-end/28046)
+- speed up dominance frontiers calculation (Jan Hubicka)
+- add README.libgcjwebplugin.so to libgcj %%doc (Tom Fitzsimmons)
+- fix gcc-gfortran %%doc (#206333)
+- fix gcc-debuginfo (#205500)
+
 * Fri Sep  8 2006 Jakub Jelinek <jakub at redhat.com> 4.1.1-21
 - update from gcc-4_1-branch (-r116498:116778)
   - PRs c++/19809, c++/26102, c++/26195, c++/26571, c++/26670, c++/26671,


Index: sources
===================================================================
RCS file: /cvs/dist/rpms/gcc/devel/sources,v
retrieving revision 1.171
retrieving revision 1.172
diff -u -r1.171 -r1.172
--- sources	8 Sep 2006 15:23:31 -0000	1.171
+++ sources	15 Sep 2006 09:41:09 -0000	1.172
@@ -1 +1 @@
-9be7d1466ffb2b7de0f59adba43a5cdd  gcc-4.1.1-20060908.tar.bz2
+0ac7df765d5ee8713670a30e4a0497a7  gcc-4.1.1-20060915.tar.bz2




More information about the fedora-cvs-commits mailing list