Merge trunk version 204345 into gupc branch.
[official-gcc.git] / gcc / ChangeLog.upc
blob74725cb66d25ed0e134520cedfe3b521aeef04e8
1 2013-11-04 Gary Funck  <gary@intrepid.com>
3         Merge trunk version 204345 into gupc branch.
5 2013-10-31 Gary Funck  <gary@intrepid.com>
7         Released GUPC 4.9.0.1 based on version 203902.
8         This release version was committed on 2013-10-21.
9         * DEV-PHASE: Bump to 4.9.0.2.
10         * DATESTAMP: Bump date stamp.
12 2013-10-28 Gary Funck  <gary@intrepid.com>
14         Merge trunk version 204119 into gupc branch.
16 2013-10-21 Gary Funck  <gary@intrepid.com>
18         Merge trunk version 203886 into gupc branch.
20 2013-10-14 Gary Funck  <gary@intrepid.com>
22         Merge trunk version 203514 into gupc branch.
24 2013-10-07 Gary Funck  <gary@intrepid.com>
26         Merge trunk version 203240 into gupc branch.
28 2013-10-01 Gary Funck  <gary@intrepid.com>
30         Implement pointer-to-shared -> integer conversions.
31         Required per UPC 1.3 Specification.
32         c/c-typeck.c (build_c_cast): Remove logic that diagnosed
33         PTS->int conversions as an error.  Rewrite into a CONVERT_EXPR
34         for later processing by upc_genericize().
36 2013-09-30 Gary Funck  <gary@intrepid.com>
38         Merge trunk version 203026 into gupc branch.
40 2013-09-23 Gary Funck  <gary@intrepid.com>
42         Merge trunk version 202825 into gupc branch.
44 2013-09-18 Gary Funck  <gary@intrepid.com>
46         Merge trunk version 202725 into gupc branch.
48 2013-09-16 Gary Funck  <gary@intrepid.com>
50         Merge trunk version 202619 into gupc branch.
52 2013-09-09 Gary Funck  <gary@intrepid.com>
54         Merge trunk version 202382 into gupc branch.
56 2013-09-02 Gary Funck  <gary@intrepid.com>
58         Merge trunk version 202159 into gupc branch.
60 2013-08-26 Gary Funck  <gary@intrepid.com>
62         Merge trunk version 202008 into gupc branch.
64 2013-08-19 Gary Funck  <gary@intrepid.com>
66         Merge trunk version 201832 into gupc branch.
68 2013-08-05 Gary Funck  <gary@intrepid.com>
70         Merge trunk version 201483 into gupc branch.
72 2013-07-29 Gary Funck  <gary@intrepid.com>
74         Merge trunk version 201301 into gupc branch.
76 2013-07-22 Gary Funck  <gary@intrepid.com>
78         Merge trunk version 201119 into gupc branch.
80 2013-07-15 Gary Funck  <gary@intrepid.com>
82         Merge trunk version 200955 into gupc branch.
84 2013-07-08 Gary Funck  <gary@intrepid.com>
86         Merge trunk version 200775 into gupc branch.
88 2013-07-01 Gary Funck  <gary@intrepid.com>
90         Merge trunk version 200575 into gupc branch.
92 2013-06-24 Gary Funck  <gary@intrepid.com>
94         Merge trunk version 200361 into gupc branch.
96 2013-06-19 Gary Funck  <gary@intrepid.com>
98         Merge trunk version 200149 into gupc branch.
100 2013-06-03 Gary Funck  <gary@intrepid.com>
102         Merge trunk version 199596 into gupc branch.
104 2013-05-27 Gary Funck  <gary@intrepid.com>
106         Merge trunk version 199350 into gupc branch.
108 2013-05-20 Gary Funck  <gary@intrepid.com>
110         Merge trunk version 199093 into gupc branch.
112 2013-05-13 Gary Funck  <gary@intrepid.com>
114         Merge trunk version 198815 into gupc branch.
116 2013-05-06 Gary Funck  <gary@intrepid.com>
118         Merge trunk version 198622 into gupc branch.
120 2013-04-29 Gary Funck  <gary@intrepid.com>
122         Merge trunk version 198433 into gupc branch.
124 2013-04-15 Gary Funck  <gary@intrepid.com>
126         Merge trunk version 197958 into gupc branch.
128 2013-04-08 Gary Funck  <gary@intrepid.com>
130         Merge trunk version 197571 into gupc branch.
132 2013-04-04 Gary Funck  <gary@intrepid.com>
134         Per the UPC 1.3 specification, the type of the
135         optional barrier/notify/wait expression is not constrained to
136         'int'. Instead, any type that is assignment compatible
137         with an 'int' type is permitted.
138         * c/c-parser.c (c_parser_upc_sync_statement): Do not check
139         the optional expression type here.  Let upc_build_sync_stmt()
140         handle it.
141         * c/c-tree.h (c_cvt_expr_for_assign): Declare prototype.
142         * c/c-typeck.c (c_cvt_expr_for_assign): New.  Also, call
143         error_at() in lieu of error() when the source location is known.
144         * upc/upc-act.c (upc_build_sync_stmt): Call c_cvt_expr_for_assign()
145         to check/convert the optional synchronization statement
146         expression.
148 2013-04-02 Gary Funck  <gary@intrepid.com>
150         Merge trunk version 197340 into gupc branch.
152 2013-04-02 Gary Funck  <gary@intrepid.com>
154         Revert revision 178346 (2011-08-30)
155         which changed the prototype of check_qualified_type and related
156         functions so that their parameters were just 'tree' and not
157         'const_tree'.  This seemed necessary at the time because of a
158         change to TYPE_BLOCK_FACTOR(), which in turn called function
159         that hashed the type node pointer.  The hash functions did
160         not accept "const void *" pointers.  Implement a work around
161         that removes this restriction.
162         * c/c-typeck.c: Revert.
163         * tree.c: Revert.
164         * tree.h: Revert.  Change prototype of upc_block_factor_lookup()
165         to accept a 'const_tree' pointer to a type node.
166         * c-family/stub-upc.c (upc_block_factor_lookup): Update prototype.
167         * upc/upc-act.c (upc_block_factor_lookup): Accept const_tree
168         input argument and convert this to 'tree' for use with hash function.
170 2013-03-25 Gary Funck  <gary@intrepid.com>
172         Merge trunk version 197029 into gupc branch.
174 2013-03-21 Gary Funck  <gary@intrepid.com>
176         Released GUPC 4.8.0.3 based on version 196601.
177         This release version was committed on 2013-03-11.
178         * DATESTAMP: Bump date stamp.
180 2013-03-18 Gary Funck  <gary@intrepid.com>
182         Merge trunk version 196771 into gupc branch.
183         * DEV-PHASE: Bump release identifier to 4.9.0-1.
185 2013-03-11 Gary Funck  <gary@intrepid.com>
187         Merge trunk version 196592 into gupc branch.
189 2013-03-04 Gary Funck  <gary@intrepid.com>
191         Merge trunk version 196422 into gupc branch.
193 2013-02-25 Gary Funck  <gary@intrepid.com>
195         Merge trunk version 196253 into gupc branch.
197 2013-02-18 Gary Funck  <gary@intrepid.com>
199         Merge trunk version 196115 into gupc branch.
201 2013-02-11 Gary Funck  <gary@intrepid.com>
203         Merge trunk version 195937 into gupc branch.
205 2013-02-04 Gary Funck  <gary@intrepid.com>
207         Merge trunk version 195707 into gupc branch.
209 2013-01-28 Gary Funck  <gary@intrepid.com>
211         Merge trunk version 195502 into gupc branch.
213 2013-01-21 Gary Funck  <gary@intrepid.com>
215         Merge trunk version 195330 into gupc branch.
217 2013-01-14 Gary Funck  <gary@intrepid.com>
219         Merge trunk version 195164 into gupc branch.
221 2013-01-07 Gary Funck  <gary@intrepid.com>
223         Merge trunk version 194962 into gupc branch.
225 2012-12-24 Gary Funck  <gary@intrepid.com>
227         Merge trunk version 194709 into gupc branch.
229 2012-12-17 Gary Funck  <gary@intrepid.com>
231         Merge trunk version 194552 into gupc branch.
233 2012-12-10 Gary Funck  <gary@intrepid.com>
235         Merge trunk version 194351 into gupc branch.
237 2012-12-03 Gary Funck  <gary@intrepid.com>
239         Merge trunk version 194076 into gupc branch.
241 2012-11-30  Gary Funck  <gary@intrepid.com>
243         Released GUPC 4.8.0.2 based on version 193446.
244         Date of release: 2012-11-12.
245         * DEV-PHASE: Bump release identifier to 4.8.0-3.
246         * DATESTAMP: Bump date stamp.
248 2012-11-26 Gary Funck  <gary@intrepid.com>
250         Merge trunk version 193807 into gupc branch.
252 2012-11-20 Gary Funck  <gary@intrepid.com>
254         Merge trunk version 193672 into gupc branch.
256 2012-11-19 Gary Funck  <gary@intrepid.com>
258         Merge trunk version 193617 into gupc branch.
260 2012-11-15 Gary Funck  <gary@intrepid.com>
262         Merge trunk version 193426 into gupc branch.
264 2012-11-12  Gary Funck  <gary@intrepid.com>
266         Released GUPC 4.8.0.1 based on version 192948.
267         Date of release: 2012-10-29.
268         * DEV-PHASE: Bump release identifier to 4.8.0-2.
269         * DATESTAMP: Bump date stamp.
271 2012-11-05 Gary Funck  <gary@intrepid.com>
273         Merge trunk version 193152 into gupc branch.
275 2012-10-29 Gary Funck  <gary@intrepid.com>
277         Merge trunk version 192909 into gupc branch.
279 2012-10-28  Nenad Vukicevic  <nenad@intrepid.com>
281         Remove unused --upc-pthreads-per-process compile switch.
282         * c-family/c.opt: Remove --upc-pthreads-per-process switch
283         that compiler/runtime do not use.
284         * c-family/c-opts.c (c_common_handle_option): Remove support for
285         --upc-pthreads-per-process switch.
286         * c-family/c-common.c: Ditto.
287         * c-family/c-common.h: Ditto.
289 2012-10-27 Gary Funck  <gary@intrepid.com>
291         * defaults.h: fix typos and formatting in UPC-related entries.
293 2012-10-26  Nenad Vukicevic  <nenad@intrepid.com>
295         Place shared initialization code into the .text
296         section instead of a separate .upc_init section.
297         * defaults.h (UPC_INIT_SECTION_NAME): Delete.
298         (UPC_INIT_BEGIN_NAME): Delete.
299         (UPC_INIT_END_NAME): Delete.
300         * doc/tm.texi.in: Ditto.
301         * doc/tm.texi: Ditto.
303 2012-10-22 Gary Funck  <gary@intrepid.com>
305         Merge trunk version 192673 into gupc branch.
307 2012-10-15 Gary Funck  <gary@intrepid.com>
309         Merge trunk version 192449 into gupc branch.
311 2012-10-08 Gary Funck  <gary@intrepid.com>
313         Merge trunk version 192198 into gupc branch.
315 2012-10-01 Gary Funck  <gary@intrepid.com>
317         Merge trunk version 191931 into gupc branch.
319 2012-09-26  Gary Funck  <gary@intrepid.com>
321         Implement support for various UPC version 1.3 specification
322         additions and changes. Deprecate support for upc_local_alloc.
323         Add support for upc_tick (wall-clock timer) library.
324         Add support for collective de-allocation functions:
325         upc_all_free and upc_all_lock_free.
326         Consult gcc/upc/ChangeLog, libgupc/ChangeLog,
327         libgupc/testsuite/libgupc.upc/intrepid/ChangeLog for details.
329 2012-09-24 Gary Funck  <gary@intrepid.com>
331         Merge trunk version 191658 into gupc branch.
333 2012-09-17  Gary Funck  <gary@intrepid.com>
335         Merge trunk version 191376 into gupc branch.
337 2012-09-10  Gary Funck  <gary@intrepid.com>
339         Merge trunk version 191141 into gupc branch.
341 2012-08-27  Gary Funck  <gary@intrepid.com>
343         Merge trunk version 190707 into gupc branch.
344         * tree.h (struct tree_base): Adjust various
345         UPC tree and type flags to refer to the
346         newly introduced u.bits field.
348 2012-08-20  Gary Funck  <gary@intrepid.com>
350         Merge trunk version 190524 into gupc branch.
351         Incorporates a fix in genoutput.c (to properly use
352         CONST_CAST) that led to build failures with
353         older versions of g++.
355 2012-08-16  Gary Funck  <gary@intrepid.com>
357         Merge trunk version 190437 into gupc branch.
358         Incorporates a fix for a build failure on the PPC
359         due to passing incorrect switches to the assembler.
360         Also, first merged trunk revision that compiles GCC
361         with the C++ compiler in the first stage.
363 2012-08-13  Gary Funck  <gary@intrepid.com>
365         Merge trunk version 190336 into gupc branch.
367 2012-08-09  Gary Funck  <gary@intrepid.com>
369         * c-family/c-common.c (c_fully_fold_internal): Do not fold
370         offsetof-like expressions when they are applied to UPC
371         shared types.
373 2012-08-06  Gary Funck  <gary@intrepid.com>
375         Merge trunk version 190173 into gupc branch.
377 2012-08-01  Gary Funck  <gary@intrepid.com>
379         Merge trunk version 190063 into gupc branch.
380         Incorporates fix for build failure on IA64.
382 2012-07-30  Gary Funck  <gary@intrepid.com>
384         Merge trunk version 189954 into gupc branch.
386 2012-07-27  Gary Funck  <gary@intrepid.com>
388         Merge trunk version 189856 into gupc branch.
389         Incorporates fix for bootstrap with a sub-set of language
390         specific source directories present.
391         * optabs.c: Revert to trunk.  Rather than defining opcodes
392         as a way of defining get/put runtime library function names,
393         generate them directly in gcc/upc/upc-genericize.c.
394         * optabs.h: Ditto.
395         * genopinit.c: Ditto.
397 2012-07-23  Gary Funck  <gary@intrepid.com>
399         Merge trunk version 189777 into gupc branch.
401 2012-07-16  Gary Funck  <gary@intrepid.com>
403         Merge trunk version 189545 into gupc branch.
405 2012-07-12  Gary Funck  <gary@intrepid.com>
407         Merge trunk version 189366 into gupc branch.
409 2012-07-05  Gary Funck  <gary@intrepid.com>
411         Merge trunk version 189274 into gupc branch.
412         Incorporates graphite build infrastructure changes.
414 2012-07-04  Gary Funck  <gary@intrepid.com>
416         Merge trunk version 189080 into gupc branch.
417         * Makefile.in: Adjust for move of C front-end files.
418         * c/Make-lang.in: Ditto.
420 2012-07-03  Gary Funck  <gary@intrepid.com>
422         Merge trunk version 189078 into gupc branch.
424 2012-06-25  Gary Funck  <gary@intrepid.com>
426         Merge trunk version 188931 into gupc branch.
428 2012-06-18  Gary Funck  <gary@intrepid.com>
430         Merge trunk version 188721 into gupc branch.
432 2012-06-11  Gary Funck  <gary@intrepid.com>
434         Merge trunk version 188380 into gupc branch.
436 2012-06-04  Gary Funck  <gary@intrepid.com>
438         Merge trunk version 188168 into gupc branch.
440 2012-05-29  Gary Funck  <gary@intrepid.com>
442         Merge trunk version 187927 into gupc branch.
444 2012-05-18  Gary Funck  <gary@intrepid.com>
446         Merge trunk version 187666 into gupc branch.
447         Incorporates fix for ICE in tree vectorization pass
448         when processing strided loads.
450 2012-05-17  Gary Funck  <gary@intrepid.com>
452         Merge trunk version 187578 into gupc branch.
454 2012-05-09  Gary Funck  <gary@intrepid.com>
456         Merge trunk version 187347 into gupc branch.
457         Incorporates fix for segfault in tree vectorization pass.
459 2012-05-04  Nenad Vukicevic  <nenad@intrepid.com>
461         * testsuite/lib/upc.exp: Use gupc instead of xgupc driver.
462         Appropriate libraries and include files are added on the
463         command line to make it possible to compile with the driver
464         from the build tree.
466 2012-04-29  Nenad Vukicevic  <nenad@intrepid.com>
468         * config/rs6000/rs6000.c (rs6000_return_in_memory): Conform to
469         PPC ABI. In the UPC 'struct' pointer-to-shared representation,
470         a function returns a pointer-to-shared in memory instead
471         of in registers.
472         (rs6000_pass_by_reference): Ditto.
474 2012-04-28  Gary Funck  <gary@intrepid.com>
476         * c-decl.c (grokdeclarator): Set 'type' to error node
477         after detecting "shared auto variable" error to avoid
478         downstream complications.
479         * upc-act.c: Fix a couple of spelling errors in comments.
481 2012-04-26  Gary Funck  <gary@intrepid.com>
483         * c-family/c-pragma.c (handle_pragma_upc):
484         Fix typo in warning message.
486 2012-04-17  Gary Funck  <gary@intrepid.com>
488         Merge trunk version 186486 into gupc branch.
490 2012-04-17  Gary Funck  <gary@intrepid.com>
492         * c-family/c-pragma.c (disable_pupc_mode): Return the previous
493         value of the pupc mode.  Fixes a compile-time warning.
494         * c-family/c-pragma.c (init_pragma_pupc, get_upc_pupc_mode,
495         disable_pupc_mode, set_pupc_mode, handle_pragma_pupc):
496         Improve source formatting.
498 2012-04-09  Gary Funck  <gary@intrepid.com>
500         Merge trunk version 186243 into gupc branch.
501         Incorporates a powerpc 'ffi' fix.
503 2012-03-16  Gary Funck  <gary@intrepid.com>
505         Merge trunk version 185454 into gupc branch.
506         Incorporates a libgcc fix for builds on Darwin.
508 2012-03-13  Gary Funck  <gary@intrepid.com>
510         Merge trunk version 185278 into gupc branch.
511         * c-decl.c (c_build_pointer_type): For UPC pointer-to-shared types
512         call build_pointer_type() to apply UPC-specific qualifiers.
513         * top-level/configure.ac: factor the checking for posix hostst
514         out of the libgomp section so that it can also be used by libgupc.
515         * top-level/configure: Re-generate.
516         * DEV-PHASE: bump to 4.8.0-1.
518 2012-03-12  Gary Funck  <gary@intrepid.com>
520         * config/rs6000/rs6000.c (rs6000_function_value): Do not over-ride
521         the mode for a pointer for upc-pointer-to-shared types.
523 2012-03-04  Gary Funck  <gary@intrepid.com>
525         Merge trunk version 184900 into gupc branch.
527 2012-02-17  Gary Funck  <gary@intrepid.com>
529         Released GUPC 4.7.0.2 based on version 183992.
530         * DEV-PHASE: Bump release identifier to 4.7.0-3.
531         * DATESTAMP: Bump date stamp.
533 2012-02-03  Nenad Vukicevic  <nenad@intrepid.com>
535         * c-family/c-pragma.c (disable_pupc_mode): New. Disable profiling
536         code generation (same as #pragma pupc off).
537         (set_pupc_mode): New. Set/restore profiling mode.
538         * c-family/c-upc.h (disable_pupc_mode): New. Prototype.
539         (set_pupc_mode): New. Prototype.
540         * upc/upc-act.c (upc_write_init_func): Disable emitting of the
541         profiling code for shared variables initialization routines.
543 2012-01-31  Gary Funck  <gary@intrepid.com>
545         Merge trunk version 183751 into gupc branch.
546         Incorporates fix for bootstrap failure on openSUSE 12.1.
548 2012-01-10  Gary Funck  <gary@intrepid.com>
550         Merge trunk version 183072 into gupc branch.
551         Incorporates libcpp __BASE_FILE__ fix.
553 2011-12-20  Nenad Vukicevic <nenad@intrepid.com>
555         * top-level/Makefile.def (flags_to_pass): Added GUPC
556         defines. Fixes the make error when upc is not specified as one
557         of the languages to build.
558         * top-level/Makefile.in: Re-generate.
560 2011-11-22  Gary Funck  <gary@intrepid.com>
562         * DEV-PHASE: "GCC UPC" -> "GNU UPC", and bump minor rev.
563         * dwarf2out.c (gen_compile_unit_die): Check for
564         the "GNU UPC" language string in lieu of "GCC UPC".
565         * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Ditto.
567 2011-11-18  Gary Funck  <gary@intrepid.com>
569         Merge trunk version 181552 into gupc branch.
570         Incorporates libgcc/libunwind fix for IA64.
572 2011-11-19  Gary Funck  <gary@intrepid.com>
574         * config/rs6000/rs6000.c (rs6000_output_function_epilogue):
575         Add check for UPC when defining the language type value
576         in a traceback entry.
578 2011-11-18  Gary Funck  <gary@intrepid.com>
580         Merge trunk version 181493 into gupc branch.
581         Incorporates final fix for PR target/49992.
583 2011-11-09  Nenad Vukicevic <nenad@intrepid.com>
585         * Makefile.in (CRTSTUFF_CFLAGS): Revert the previous
586         change that converted relative include paths into absolute
587         ones, as it does not work with older version of make (3.80).
589 2011-10-27  Nenad Vukicevic <nenad@intrepid.com>
591         Apply patch for Darwin build - PR49992.
592         * top-level/configure.ac: Don't run ranlib with '-c' option for Darwin.
593         * gcc/configure.ac: Ditto.
594         * gcc/ada/mlib-tgt-specific-darwin.adb: Ditto.
595         * gcc/ada/gcc-interface/Makefile.in: Ditto.
596         * top-level/configure: Re-generate.
597         * gcc/configure: Re-genrate.
599 2011-10-26  Gary Funck  <gary@intrepid.com>
601         Rename "GCC/UPC" to "GNU UPC", "UPC" to "GUPC", and
602         "libupc" to "libgupc".
603         * top-level/configure.ac: Implement support for cross-builds, and
604           adjust for rename of libupc to libgupc.
605         * top-level/Makefile.tpl: Ditto.
606         * top-level/Makefile.def: Ditto.
607         * top-level/configure: Re-generate.
608         * top-level/Makefile.in: Re-generate.
609         * top-level/contrib/gcc_update: Adjust for rename of libupc to libgupc.
610         * doc/tm.texi.in: Adjust for rename of libupc to libgupc.
611         * doc/tm.texi: Re-generate.
612         * tree-pretty-print.c (dump_block_node): Delete unused variable.
613         * gcc.c: Adjust for rename of libupc to libgupc.
614         * testsuite/lib/upc.exp: Adjust for rename of libupc to libgupc.
615         Change "GCC_UNDER_TEST" to "GUPC_UNDER_TEST".
616         Change "xupc" to "xgupc".
617         * configure.ac: Change "GCC UPC" to "GNU UPC".
618         * Makefile.in (CRTSTUFF_CFLAGS): Adjust $(INCLUDES_FOR_TARGET)
619         so that they are absolute paths.  This is needed because
620         the upc-crtstuff builds are in the libgupc library build
621         directories which are not at the same level as libgcc.
622         * config/darwin.h: Adjust for rename of libupc to libgupc.
624 2011-10-20  Gary Funck  <gary@intrepid.com>
626         Merge trunk version 180276 into gupc branch.
627         Incorporates fix for PR bootstrap/50709.
629 2011-10-20  Gary Funck  <gary@intrepid.com>
631         Merge trunk version 180246 into gupc branch.
633 2011-10-19  Gary Funck  <gary@intrepid.com>
635         Merge trunk version 180233 into gupc branch.
636         Incorporates fix for PR debug/49310 (var tracking).
638 2011-10-11  Nenad Vukicevic <nenad@intrepid.com>
640         * testsuite/lib/upc-dg.exp: Limit number of torture runs to
641         only four (O0 static/dynamic, O3 static/dynamic).
642         Detect -fupc-threads-0 as an option for dynamic threads
643         compile environment.
645 2011-10-10  Gary Funck  <gary@intrepid.com>
647         * tree.c (check_qualified_type, check_aligned_type):
648         Call tree_int_cst_equal() to compare UPC blocking factors
649         if the corresponding tree pointers are not equal.
650         * c-typeck.c (comptypes_internal, c_build_qualified_type_1): Ditto.
652 2011-10-07  Nenad Vukicevic <nenad@intrepid.com>
654         Add configuration checks for struct/packed builds so we can
655         use upc_struct_pts/upc_packed_pts selectors in the testsuite.
656         * testsuite/lib/target-supports.exp
657         (check_effective_target_upc_struct_pts): New.
658         (check_effective_target_upc_packed_pts): New.
660 2011-09-15  Nenad Vukicevic <nenad@intrepid.com>
662         Add to FLAGS the flags needed to disable inlining of
663         UPC run-time access routines.
664         * testsuite/lib/target-supports.exp
665         (add_options_for_upc_library_calls): New.
667 2011-09-15  Gary Funck  <gary@intrepid.com>
669         Fix ICE involving shared bit field accesses.
670         * tree.c (build3_stat): Propagate TEEE_SHARED()
671         and TREE_STRICT() and TREE_RELAXED() flags, if applicable.
673 2011-09-13  Gary Funck  <gary@intrepid.com>
675         Merge trunk version 178795 into gupc branch.
676         Incorporates fix to PR bootstrap/50010 for x86-32.
678 2011-09-08  Gary Funck  <gary@intrepid.com>
680         Merge trunk version 178557 into gupc branch.
682 2011-09-07  Gary Funck  <gary@intrepid.com>
684         Ensure that UPC pointer-to-shared type alignment is
685         propagated to the final type.  Revert to long-standing
686         alignment policy: twice the size of a "C" pointer.
687         * tree.c (build_pointer_type): Propagate the alignment
688         of the UPC pointer-to-shared representation type
689         into the newly built pointer type.
691 2011-08-30  Gary Funck  <gary@intrepid.com>
693         * tree.h (check_qualified_type): Change 'const_tree'
694         argument types back to 'tree' to avoid complaints
695         of assignment drops qualifiers for invocations of the
696         newly implemented TYPE_BLOCK_FACTOR() macro, which
697         invokes hash functions with 'tree' pointer values that
698         are not const qualified.
699         * tree.c (check_qualified_type, check_aligned_type): Ditto.
700         * c-typeck.c (comptypes_internal): Ditto.
702 2011-08-29  Gary Funck  <gary@intrepid.com>
704         Fixes for regressions noted running "make check"
705         versus GCC trunk.
706         * fold-const.c (fold_unary_loc): Execute UPC-specific
707         checks for a cast-of-a-cast, only if one of the
708         operands is a UPC pointer-to-shared value.
709         * opts.c (print_specific_help):  Fix a comparison
710         in an assert that checks that there are enough
711         bits reserved for the number of languages defined
712         in the .opt files.
714 2011-08-29  Gary Funck  <gary@intrepid.com>
716         Implement a hash table to record UPC block factors.
717         * c-family/stub-upc.c (upc_block_factor_insert,
718         upc_block_factor_lookup): New dummy stub procedures.
719         * c-family/c-common.c (c_sizeof_or_alignof_type):
720         Rename UPC_TYPE_HAS_THREADS_FACTOR() to TYPE_HAS_THREADS_FACTOR().
721         * tree.c (copy_node_stat): call SET_TYPE_BLOCK_FACTOR()
722         to copy (hashed) UPC blocking factor.
723         (set_type_quals): Likewise.
724         * tree.h: Rename UPC_TYPE_HAS_THREADS_FACTOR() to
725         TYPE_HAS_THREADS_FACTOR().
726         (type_common.block_factor): Delete.
727         (TYPE_HAS_BLOCK_FACTOR_0, TYPE_HAS_BLOCK_FACTOR_X,
728         TYPE_HAS_BLOCK_FACTOR, SET_TYPE_BLOCK_FACTOR): New.
729         (TYPE_BLOCK_FACTOR): Re-implement, using hash table for
730         UPC blocking factors greater than one.
731         * dwarf2out.c (modified_type_die): Re-implement
732         logic that records UPC blocking factor in the generated
733         DWARF2 debugging information.
734         (add_subscript_info): Rename UPC_TYPE_HAS_THREADS_FACTOR() to
735         TYPE_HAS_THREADS_FACTOR().
736         * c-decl.c (finish_decl, grokdeclarator):
737         Rename UPC_TYPE_HAS_THREADS_FACTOR() to TYPE_HAS_THREADS_FACTOR().
738         * print-tree.c (print_node): Check for TYPE_LANG_FLAG_* flags
739         used by UPC, and print UPC-specific information.
741 2011-08-28  Gary Funck  <gary@intrepid.com>
743         Re-work the type machinery to fully support and to unify support
744         for the UPC layout qualifier (blocking factor).
745         * c-family/stub-upc.c (upc_set_block_factor): Delete.
746           (upc_grok_layout_qualifier): rename from upc_apply_layout_qualifier()
747           and update prototype.
748         * c-family/c-common.c (complete_array_type): call newly
749           defined c_build_qualified_type_1() instead of
750           upc_set_block_factor().
751         * c-family/c-upc.h (pc_grok_layout_qualifier): rename from
752           upc_apply_layout_qualifier() and update prototype.
753           (upc_set_block_factor): Delete prototype.
754         * c-family/c-common.h (c_build_qualified_type): redefine
755           as a pre-processor macro that invokes c_build_qualified_type_1()
756           with a null UPC layout qualifier.
757           (c_build_qualified_type_1): New.  Add layout qualifier argument
758           to old c_build_qualified_type() prototype.
759         * tree.c (set_type_quals, check_qualified_type):
760           Add layout qualifier as argument.
761           (check_aligned_type): Add check for UPC block factor equality.
762           (get_qualified_type_1): Rename from get_qualified_type() and
763           add layout qualifier as argument.
764           (build_qualified_type_1): Rename from build_qualified_type() and
765           add layout qualifier as argument.
766         * tree.h (check_qualified_type): Add layout qualifier as argument
767           to the prototype.
768           (get_qualified_type): Re-define as a as a pre-processor macro
769           that invokes get_qualified_type_1() with a null
770           UPC layout qualifier.
771           (get_qualified_type_1): Rename from get_qualified_type() and
772           add layout qualifier as argument.
773         * cp/tree.c (c_build_qualified_type_1): Rename from
774           c_build_qualified_type() and add (unused) layout qualifier
775           argument.
776         * c-decl.c (finish_decl): re-format long error messages.
777           (grokdeclarator): Re-work the logic so that it calls
778           upc_grok_layout_qualifier() to handle the UPC layout
779           qualifier, if present.
780         * c-typeck.c (qualify_type, common_pointer_type,
781           build_component_ref): Re-work the logic so that it calls
782           upc_grok_layout_qualifier() to handle the UPC layout qualifier,
783           if present.
784           (c_build_qualified_type_1): Rename from c_build_qualified_type()
785           and add layout qualifier argument.
786         * print_tree.c (print_node): Re-format a long line.
788 2011-08-26  Gary Funck  <gary@intrepid.com>
790         Merge trunk version 177949 into gupc branch.
791         * c-family/c-common.h (enum rid): Bump the number of type modifiers
792           in the comment.
793         * ../libcpp/init.c (struct lang_flags): Adjust the entry for UPC
794           to add new rliterals column value.
796 2011-08-26  Gary Funck  <gary@intrepid.com>
798         * convert.c (convert_to_integer): Fix the check for the
799           difference between two UPC pointers-to-shared values.
801 2011-08-23  Nenad Vukicevic <nenad@intrepid.com>
803         * configure.ac: Fix the name for --with-upc-pts-packed-bits
804           option. Support --with-upc-packed-bits as deprecated. Fix the code to
805           correctly check packed bits.
806         * configure: Re-generate.
808 2011-08-16  Gary Funck  <gary@intrepid.com>
810         * c-parser.c (c_parser_upc_sync_statement): issue error diagnostic if
811           the barrier id expression is not an integer expression.
813 2011-08-12  Gary Funck  <gary@intrepid.com>
815         * config/i386/i386.h (MAX_FIXED_MODE_SIZE): Delete
816           (revert to trunk).
817         * upc/upc-pts-struct.c (upc_pts_struct_init_type):
818           Set mode of UPC pointer-to-shared rep. to an
819           integral mode of size at least as large as the
820           size of the representation's struct type.
822 2011-08-12  Gary Funck  <gary@intrepid.com>
824         Rework/simplify the UPC genericize pass.
825         * c-family/stub-upc.c (upc_apply_layout_qualifier,
826           upc_build_pointer_type): New.
827           (upc_set_block_factor): Adjust to new calling sequence.
828           (upc_build_shared_var_addr): Delete.
829         * c-family/c-common.c (complete_array_type): Adjust call
830           to upc_set_block_factor().
831         * c-family/c-upc.h (upc_apply_layout_qualifier,
832           upc_build_pointer_type): New.
833           (upc_build_shared_var_addr): Delete.
834           (upc_set_block_factor): Adjust to new calling sequence.
835         * tree.h (TI_UPC_CHAR_PTS_TYPE, upc_char_pts_type_node): New.
836         * c-decl.c (grokdeclarator): Call newly defined
837           upc_apply_layout_qualifier() instead of upc_set_block_factor().
838         * c-decl.c (grokdeclarator): Split long UPC-related error
839           messages into two lines.
840         * c-typeck.c (build_unary_op): Do not call upc_build_shared_var_addr()
841           directly.  Revert that change to trunk. (upc_genericize() will
842           handle lowering the expressions that take the address of a
843           UPC variable).
844         * config/i386/i386.c (ix86_promote_function_mode): For UPC
845           pointers-to-shared, return the type mode of the UPC pointer-to-shared
846           representation type.
848 2011-08-10  Gary Funck  <gary@intrepid.com>
850         Implement additional fixes for recent merge with trunk.
851         * explow.c (promote_mode): Do not attempt to promote
852           the mode for UPC pointer-to-shared types.
853         * config/i386/i386.c (function_value_64): Ditto.
855 2011-08-07  Gary Funck  <gary@intrepid.com>
857         Merge trunk version 177548 into gupc branch.
858         * config/i386/i386.c (ix86_promote_function_mode):
859           Do not promote UPC pointers-to-shared to Pmode.
860         * c-family/c-ommon.c (pointer_int_sum):
861           Also check the pointer operand, rather than just
862           its type, when making the decision to derive
863           the equivalent unshared type.
864         * tree.c (build2_stat): If the type of the result
865           passed in as an argument is a UPC shared type,
866           derive the unshared equivalent when calculating
867           the result type of the node.
869 2011-07-15  Nenad Vukicevic <nenad@intrepid.com>
871         * config/darwin.c: Disable var_tracking option
872           on -O0 as it is supposed to run only when optimization
873           is applied. See GCC bug 49743.
875 2011-07-06  Gary Funck  <gary@intrepid.com>
877         Re-implement the pass that lowers trees generated by
878         the UPC front-end into GENERIC.  Previously this was
879         done within the gimplification framework, but this
880         required that gimplification be run before inlining
881         and various other passes, which did not fit in well
882         with the current design of the middle-end passes.
883         Now, the lowering is done by a newly defined language
884         specific genericize hook.  With this change, we are
885         are able to undo some extensions made to the gimplify
886         logic, and thus can revert several files to trunk.
888         * c-decl.c: Add a check for UPC deprecated names which
889           may appear as undefined function names.
890         * libfuncs.h (LTI_upc_barrier, LTI_upc_notify, LTI_upc_wait,
891           LTI_upc_getaddr): Remove definitions of unused UPC
892           library function names.  These were defined back when
893           the libfunc interface was used to call these routines.
894         * timevar.def (TV_TREE_UPC_GENERICIZE): New. Track time spent
895           in UPC lowering (genericize) pass.
896         * langhooks.h (gimplify_expr): Revert to trunk's definition.
897           (instrument_func): Delete this hook.  Now handled in
898           upc_genericize().
899         * tree-pass.h: Revert to trunk.
900         * c-typeck.c (build_unary_op): Adjust reference to
901           upc_genericize() in a comment.
902         * gimplify.c (create_tmp_var_raw): Delete logic that
903           was converting UPC shared types into unshared types
904           to be used for temporaries.  Now handled in  upc_genericize().
905           Replace with an assertion check.
906           (prepare_gimple_addressable): Revert to trunk's definition.
907           No longer needed as an externally called function.
908           (flag_instrument_functions_exclude_p): Re-define as
909           an externally called function.
910           (gimplify_function_tree): Delete code that implemented
911           call to UPC's language specific function instrumentation hook.
912         * gimple.h (flag_instrument_functions_exclude_p): Define as extern.
913           (prepare_gimple_addressable): Delete extern definition;
914           revert to trunk's definition.
915         * lnaghooks-def.h (lhd_gimplify_expr): Revert to trunk's definition.
916           (LANG_HOOKS_INSTRUMENT_FUNC): Remove, no longer needed for UPC.
917         * c-family/c-gimplify.c: Revert to trunk.
918         * cp/cp-gimplify.c: Revert to trunk.
919         * cp/cp-tree.h: Revert to trunk.
920         * explow.c: Revert to trunk.
921         * langhooks.c: Revert to trunk.
922         * libfuncs.h: Revert to trunk.
923         * objc/objc-act.c: Revert to trunk.
925 2011-06-30  Gary Funck  <gary@intrepid.com>
927         * c-family/c.opt: Bring options definitions up-to-date
928         with respect to changes made in the trunk.
930 2011-06-29  Gary Funck  <gary@intrepid.com>
932         Merge trunk version 175584 into gupc branch.
934 2011-06-13  Gary Funck  <gary@intrepid.com>
936 libcpp/
937         * include/cpplib.h (enum c_lang):
938         Move the entry for CLK_UPC so that it follows CLK_STDC1X.
939         This keeps all the "C" variants together.
940         * init.c (lang_defaults): Add an entry for UPC.
942 2011-06-09  Gary Funck  <gary@intrepid.com>
944         * c-parser.c (upc_localsizeof_type): Fix an ICE when compiling for
945         a 32-bit target, the size expression overflowed, the result was
946         error_mark_node, and an ICE was triggered on an attempt to evaluate
947         C_TYPE_VARIABLE_SIZE() on the error node.
948         (upc_blocksizeof_expr, upc_blocksizeof_type,
949         upc_elemsizeof_expr, upc_elemsizeof_type, upc_localsizeof_expr):
950         Make similar changes to avoid further processing of error_mark_node.
952 2011-06-07  Gary Funck  <gary@intrepid.com>
954         * sel-sched.c (move_op): Incorporate the following
955         patch to eliminate ICE at -O3 on IA64/Altix.
957 2011-06-07  Alexander Monakov  <amonakov@ispras.ru>
959         * sel-sched.c (move_op): Use correct type for 'res'.  Verify that
960         code_motion_path_driver returned 0 or 1.
961         (sel_region_finish): Clear h_d_i_d.
963 2011-06-02  Gary Funck  <gary@intrepid.com>
965         Merge trunk version 174558 into gupc branch.
967 2011-05-30  Gary Funck  <gary@intrepid.com>
969         * configure.ac: Make the default order of the virtual
970           address field in a UPC pointer-to-shared to be "first".
971           This reverts to the previous setting, and is a short term
972           measure to work around a bug found on the IA64,
973           where vaddr=last led to incorrect code generation.
974           Rename UPC_PTS_VADDR_FIRST to HAVE_UPC_PTS_VADDR_FIRST
975           in AC_DEFINE(), to agree with recent changes in files
976           that reference this define.
977           configure, config.in: Regenerate.
979 2011-05-26  Gary Funck  <gary@intrepid.com>
981         * configure.ac: Fix typo when referring to $upc_vaddr_order.
982           configure: Regenerate.
984         * ../fixincludes/fixincl.x: Revert to trunk.
985           This file is auto-generated, and should not be merged.
987 2011-05-18  Gary Funck  <gary@intrepid.com>
989         Merge trunk version 173845 into gupc branch.
991 2011-05-17  Gary Funck  <gary@intrepid.com>
993         * c-family/stub-upc.c (upc_rts_forall_depth_var): New.
994           c-family/c-upc.h (upc_rts_forall_depth_var): Define.
996         * c-family/c-pragma.c: Remove conditional compilation
997           with HANDLE_PRAGMA_UPC and HANDLE_PRAGMA_PUPC.
998           Test 'compiling_upc' when compiling to determine if
999           the "upc" and "pupc" pragmas should be registered.
1001         * defaults.h (UPC_SHARED_SECTION_NAME, UPC_SHARED_BEGIN_NAME,
1002           UPC_SHARED_END_NAME, UPC_PGM_INFO_SECTION_NAME,
1003           UPC_PGM_INFO_BEGIN_NAME, UPC_PGM_INFO_END_NAME,
1004           UPC_INIT_SECTION_NAME, UPC_INIT_BEGIN_NAME,
1005           UPC_INIT_END_NAME, UPC_INIT_ARRAY_SECTION_NAME,
1006           UPC_INIT_ARRAY_BEGIN_NAME, UPC_INIT_ARRAY_END_NAME): New.
1007           Move these target-dependent definitions from config/upc-conf.h
1008           to here.
1010         * configure.ac: Improve the logic for UPC-related options.
1011           Delete references to pre-processor definitions that have
1012           been moved to "upc/upc-pts.h".
1014         * configure, config.in: Regenerate.
1016         * Makefile.in (UPC_PTS_REP): Remove definition and revert
1017           to trunk.  This substitution variable was used to
1018           configure the representation-specific versions of
1019           the tree rewrites that operate on UPC pointer-to-shared
1020           types and objects.
1022         * c-parser.c (c_parser_upc_forall_statement): Remove
1023           reference to UPC_FORALL_DEPTH_NAME, and call
1024           newly defined upc_rts_forall_depth_var() instead.
1026         * config/upc-config.h: Delete. Various definitions
1027           moved to "upc/upc-rts-names.h", "defaults.h", and
1028           "upc/upc-pts.h".
1030         * doc/tm.texi.in (HAVE_UPC_PTS_VADDR_FIRST,
1031           HAVE_UPC_PTS_PACKED_REP, HAVE_UPC_PTS_STRUCT_REP,
1032           UPC_SHARED_SECTION_NAME, UPC_SHARED_BEGIN_NAME,
1033           UPC_SHARED_END_NAME, UPC_PGM_INFO_SECTION_NAME,
1034           UPC_PGM_INFO_BEGIN_NAME, UPC_PGM_INFO_END_NAME,
1035           UPC_INIT_SECTION_NAME, UPC_INIT_BEGIN_NAME,
1036           UPC_INIT_END_NAME, UPC_INIT_ARRAY_SECTION_NAME,
1037           UPC_INIT_ARRAY_BEGIN_NAME, UPC_INIT_ARRAY_END_NAME):
1038           New.  Document UPC target macros.
1039           doc/tm.texi: Regenerate.
1041 2011-05-07  Gary Funck  <gary@intrepid.com>
1043         * ../configure.ac: Disable build of libupc
1044           on non POSIX hosted systems.  Use AS_HELP_STRING
1045           to define messages.  Remove 'word-pair' as a
1046           possible --with-upc-pts UPC pointer-to-shared
1047           representation.
1049         * ../configure: Regenerate.
1051         * configure.ac: Use AS_HELP_STRING to define messages.
1052           Remove 'word-pair' as a possible --with-upc-pts
1053           UPC pointer-to-shared representation.
1054           (UPC_MAX_THREADS): Limit the maximum value to 2^31-1.
1055           (UPC_MAX_BLOCK_SIZE): Correct the default value.
1057         * configure: Regenerate.
1059         * config.in: Regenerate. Delete UPC_PTS_WORD_PAIR_REP
1060           definition.
1062         * ChangeLog.upc: Fix some typos.
1064 2011-05-07  Gary Funck  <gary@intrepid.com>
1066         * ../maintainer-scripts/gcc_release: Add "upc"
1067           as one of the released languages.
1069 2011-05-06  Gary Funck  <gary@intrepid.com>
1071         Eliminate compilation warnings, by fixing
1072         #include's and updating function prototypes.
1074         * c-family/c-cppbuiltin.c: Include c-upc.h.
1076         * optabs.c (gen_libfunc): Change type of 'suffix'
1077           parameter to conform with prototype.
1079         * cp/cp-gimplify.c (cp_gimplify_expr): Add extra parameters
1080           ('gimple_test_f' and 'fallback') used by extended gimplify_expr
1081           hook used by UPC.
1083         * cp/cp-tree.h (cp_gimplify_expr): Add extra parameters to
1084           the prototype.
1086         * objc/objc-act.c (objc_gimplify_expr): Pass extra dummy
1087           argument values to cp_gimplify_expr.
1089         * config.in (HAVE_UPC_AFFINITY_SUPPORT,
1090           HAVE_UPC_NUMA_SUPPORT): Regenerate.  Remove
1091           pre-processor definitions that are no longer
1092           needed to build the 'upc' command (upc-cmd.c)
1093           because the linker specs. defined in libupc
1094           take care of linking in the needed libraries.
1096         * c-parser.c (c_parser_upc_forall_statement):
1097           initialize affinity_loc to avoid "maybe unused" warning.
1098           (c_parser_upc_sync_statement): Remove un-needed
1099           'ret' variable.  Cast return value from
1100           'upc_build_sync_stmt' to 'void' to avoid
1101           compile-time warning.
1103         * config/upc-conf.h (UPC_MAX_THREADS): Define as an
1104           integer constant, not a string.  Range is restricted
1105           to maximum positive 32-bit integer (2+ billion) to
1106           fit in with the use of 'int' in the front-end's
1107           switch handling logic.
1109 2011-05-06  Gary Funck  <gary@intrepid.com>
1111         Upgrade c-family source files to conform with modularity
1112         improvements.  Mainly, remove #include of c-tree.h in files
1113         under c-family, and define a new UPC-specific #include file,
1114         c-upc.h, and use it.
1116         * c-family/stub-upc.c: Remove #include of c-tree.h and
1117           upc/upc-act.h.  Replace with #include of c-common.h
1118           and c-upc.h.
1119           (upc_get_unshared_type, upc_pts_cvt_op_p, upc_blocksizeof_expr,
1120           upc_blocksizeof_type, upc_elemsizeof_expr, upc_elemsizeof_type,
1121           upc_localsizeof_expr, upc_localsizeof_type,
1122           upc_shared_type_p): Delete.
1124         * c-family/c-opts.c: Add #include of c-upc.h
1126         * c-family/c-common.c: Remove #include of c-tree.h and
1127           add #include of c-upc.h.
1129         * c-family/c-upc.h: New. Define API for UPC-specific functions
1130           (mostly implemented in upc/upc-act.c).
1132         * c-family/c-common.h (upc_cpp_builtins, upc_write_global_declarations):
1133           Remove extern definitions.
1135         * c-family/c-pragma.c: Remove #include of c-tree.h.
1136           Add #include of c-upc.h.
1138         * tree.h (UPC_TYPE_HAS_THREADS_FACTOR): New.  Move from
1139           c-tree.h.
1140           (upc_shared_type_p, upc_pts_cvt_op_p): New.  Move from
1141           upc/upc-act.c, and define as a macro.
1142           (expand_affinity_test): Remove unused external definition.
1143           (build_upc_unshared_type): Add external definition.
1144           (upc_shared_type_p): Remove external definition.
1146         * c-config-lang.in: Update gtfiles to refer to c-family/c-upc.h.
1148         * dojump.c: Remove #include of c-tree.h.
1150         * c-tree.h: Remove definition of UPC_TYPE_HAS_THREADS_FACTOR
1151           and move to tree.h.
1152           (count_upc_threads_refs, is_multiple_of_upc_threads,
1153           set_upc_threads_refs_to_one, c_expr, upc_affinity_test,
1154           upc_build_shared_var_addr, upc_build_sync_stmt,
1155           upc_check_decl_init, upc_check_decl, upc_decl_init, c_expr,
1156           upc_get_block_factor, upc_instrument_forall, upc_is_null_pts_p,
1157           c_expr, upc_num_threads, upc_diagnose_deprecated_stmt,
1158           upc_pts_cvt_op_p, upc_pts_diff, upc_pts_increment,
1159           upc_pts_int_sum, upc_set_block_factor, upc_set_decl_section,
1160           permit_pragma_upc, deny_pragma_upc, pragma_upc_permitted_p,
1161           set_upc_consistency_mode, get_upc_consistency_mode,
1162           push_upc_consistency_mode, pop_upc_consistency_mode,
1163           get_upc_pupc_mode):
1164           Move external definitions to c-family/c-upc.h.
1165           (upc_blocksizeof_type, upc_localsizeof_type,
1166           upc_elemsizeof_type): Remove external definitions;
1167           these functions were moved to c-parser.c.
1169         * c-decl.c: Add #include of c-upc.h.
1171         * c-typeck.c: Add #include of c-upc.h.
1173         * c-convert.c: Add #include of c-upc.h.
1175         * ChangeLog.upc: Fix typo.
1177         * Makefile.in: Add references to c-family/c-upc.h, everywhere
1178           there is a reference to c-family/c-objc.h.
1179           Remove extraneous reference to upc-act.h.
1181         * c-parser.c: Add #include of c-upc.h.
1182           (upc_blocksizeof_expr, upc_blocksizeof_type,
1183           upc_elemsizeof_expr, upc_elemsizeof_type,
1184           upc_localsizeof_expr, upc_localsizeof_type):
1185           Move from upc/upc-act.c.
1187         * tree.c (build_upc_unshared_type): New.
1188           Move upc_get_unshared_type from upc/upc-act.c and rename
1189           to build_upc_unshared_type.
1190           c-family/c-common.c (pointer_int_sum): refer to renamed
1191           build_upc_unshared_type function.
1192           c-convert.c (convert): Ditto.
1193           convert.c (convert_to_pointer): Ditto.
1194           c-typeck.c (build_unary_op, build_modify_expr,
1195           really_start_incremental_init): Ditto.
1196           gimplify.c (create_tmp_var_raw): Ditto.
1197           tree.c (build1_stat): Ditto.
1198           tree.h (upc_get_unshared_type): Rename to
1199           build_upc_unshared_type.
1201 2011-05-06  Gary Funck  <gary@intrepid.com>
1203         Merge trunk version 173471 into gupc branch.
1205 2011-05-05  Gary Funck  <gary@intrepid.com>
1207         Make changes that bring the GUPC branch more closely in sync.
1208         with the GCC trunk.  Revert any fixes that are not UPC-specific.
1209         Remove gratuitous re-formatting.
1211         * ../libstdc++-v3/config/os/bionic/ctype_noninline.h: Delete.
1212           This file should have been removed in a previous merge
1213           with the trunk.
1214         * ../configure.ac: Remove Cray Catamount/CNL support.
1215         * ../configure: Regenerate.
1216         * ../config.sub: Remove Cray Catamount/CNL support.
1217         * config.gcc: Remove Cray Catamount/CNL support.
1218         * ../maintainer-scripts/gcc_release: Revert to trunk.
1219         * c-family/c-common.h: Define parse_optimize_options.  Its definition
1220           was missed in a previous merge with the trunk.
1221         * dwarf2out.c: Revert a fix which removed the 'type_main_variant'
1222           procedure.
1223         * dwarf2out.c: Revert a fix that added a check for VECTOR_TYPE
1224           in addition to ARRAY_TYPE.
1225         * c-typeck.c: Remove an extra newline character.
1226         * varasm.c: Revert a fix that improved an error message
1227           when TLS common data is unimplemented.
1228         * varasm.c: Revert a gcc_assert that had been added which
1229           checked for a null DECL_SIZE_UNIT field.
1230         * emultls.c: Revert to trunk. Remove possible fix.
1231         * Makefile.in: Revert extra blank line that is present
1232           in the trunk version.
1233         * Makefile.in: Revert a fix that handled long shell
1234           argument lists for plugin headers.
1235         * config/ia64/ia64.opt: Revert an option setting
1236           that increased the default TLS address range.
1237         * config/ia64/crtbegin.asm: Revert to trunk.
1238           Removes an extra newline character.
1239         * ChangeLog.upc: Spell check.
1241 2011-05-03  Gary Funck  <gary@intrepid.com>
1243         * c-family/c-common.c: Remove extraneous FIXME/TODO comments.
1244           (c_apply_type_quals_to_decl): Ditto.
1245         * c-family/c-common.h: Ditto.
1246         * dojump.c: Ditto.
1247         * c-decl.c (merge_decls): Ditto.
1248         * c-typeck.c (qualify_type, default_conversion,
1249           build_component_ref, build_unary_op,
1250           c_build_qualified_type): Ditto.
1251         * gimplify.c (create_tmp_var_raw): Remove UPC-specific dead code.
1253 2011-04-29  Gary Funck  <gary@intrepid.com>
1255         * c-decl.c (finish_decl): Improve error diagnostics.
1256           (grokdeclarator): Ditto.
1258         * c-typeck.c (build_c_cast): Improve error diagnostics.
1259           (convert_for_assignment): Ditto.
1260           (build_binary_op): Ditto.
1262         * c-parser.c (c_parser_upc_forall_statement):
1263           Improve error diagnostics.
1265         * convert.c (convert_to_integer):  Improve error diagnostics.
1267 2011-04-24  Gary Funck  <gary@intrepid.com>
1269         * c-parser.c (c_parser_upc_sync_statement): Fix ICE that
1270           occurred if there is an error in the barrier id
1271           expression.  Map error_mark_node into NULL.
1273 2011-04-22  Gary Funck  <gary@intrepid.com>
1275         Merge trunk version 172873 into gupc branch.
1277 2011-04-19  Gary Funck  <gary@intrepid.com>
1279         Merge trunk version 172359 into gupc branch.
1281 2011-04-14  Gary Funck  <gary@intrepid.com>
1283         * c-family/c.opt: Add UPC as a valid language for various
1284           switches where it is valid for "C", that were not updated
1285           in previous merges with trunk.
1287 2011-04-13  Gary Funck  <gary@intrepid.com>
1289         * c-family/c.opt (fupc-pre-include): New option definition.
1290         * gcc.c (upc_options): Do not add "-include gcc-upc.h" if
1291           -fno-upc-pre-include is asserted.
1293 2011-04-07  Gary Funck  <gary@intrepid.com>
1295         Merge trunk version 172158 into gupc branch.
1296         to bring in the following fix.
1298 2011-04-05  Bernd Schmidt  <bernds@codesourcery.com>
1300         PR bootstrap/48403
1301         * haifa-sched.c (schedule_block): Increment cycle_issued_insns only
1302         if old and new states differ.
1304 2011-04-06  Gary Funck  <gary@intrepid.com>
1306         Merge trunk version 171966 into gupc branch.
1308 2011-04-01  Gary Funck  <gary@intrepid.com>
1310         * tree.h (tree_base): Move UPC flag bits into bit fields
1311           located just before spare bits.  Decrement spare bits.
1312           Rename 'shared_flag' -> 'upc_shared_flag',
1313           'relaxed_flag' -> 'upc_relaxed_flag',
1314           'strict_flag' -> 'upc_strict_flag, and adjust macros
1315           that reference them accordingly.
1317 2011-04-01  Gary Funck  <gary@intrepid.com>
1319         * c-decl.c (grokdeclarator): Fix formatting of
1320           code that sets UPC block size on scalars.
1322 2011-04-01  Gary Funck  <gary@intrepid.com>
1324         * c-decl.c (grokdeclarator): Revert use of white space
1325           to match the trunk (to rationalize diffs).
1326         * c-typeck.c (convert_for_assignment): Ditto.
1327         * tree-ssa.c (useless_type_conversion_p): Ditto.
1329 2011-03-23  Gary Funck  <gary@intrepid.com>
1331         * DEV-PHASE: bump to 4.7.0-1 to reflect recent creation of
1332           the GCC 4.6 release branch.
1334 2011-03-21  Gary Funck  <gary@intrepid.com>
1336         Merge trunk version 171202 into gupc branch.
1338 2011-03-20  Gary Funck  <gary@intrepid.com>
1340         * varasm.c: Call error() directly with a format specifier,
1341           rather than using sprintf() to format the message.
1342           This should make it easier to internationalize UPC's error messages.
1344 2011-03-20  Gary Funck  <gary@intrepid.com>
1346         * configure.ac: Fix the check for gnu ld when enabling
1347           UPC link script support.
1348           configure: Regenerate (also picks up changes from previous
1349           merge with trunk).
1351 2011-03-20  Gary Funck  <gary@intrepid.com>
1353         Move UPC start files, end files, and linker specs.
1354         into libupc.  This reduces the impact on common GCC
1355         configuration files, and ensures that these UPC-specific
1356         components are only built when the UPC language dialect is selected.
1359 gcc/
1360         * c-family/c.opt: Add -fupc-link switch, used to select UPC-specific
1361           linker specs. Fix typo in -fupc-debug message.
1363         * config/upc-conf.h, config/darwin.h: Move defines for
1364           UPC-related section begins/ends into libupc/config/default/
1365           upc-crt-config.h.
1367         * config/darwin.h(LINK_COMMAND_SPEC_A): Add call outs to
1368           UPC-related linker compiler specifications,
1369           accessed via %:include().
1371         * configure.ac, configure: Remove logic related to building
1372           upc-crtbegin/end. Remove config. tests for numa and cpu
1373           affinity (previously used by the 'upc' driver); these
1374           settings are now propagated by target-specific compiler
1375           specs. built by libupc.  Regenerate autoconf.
1377         * gcc.c (LINK_COMMAND_SPEC): Add call outs to UPC-related
1378           linker compiler specifications, accessed via %:include().
1379           Define 'upc_crtbegin_spec', 'upc_crtend_spec', and
1380           'link_upc_spec'.
1382         * Makefile.in: Remove definition of UPC_CRTSTUFF_CFLAGS.
1384         * config/linux.h, config/i386/darwin.h, config/i386/linux64.h,
1385           config/i386/linux.h, config/i386/t-darwin, config/i386/t-darwin64,
1386           config/ia64/linux.h, config/mips/t-iris,
1387           config/mips/iris6.h: Revert to trunk version 167307.
1389 libgcc/
1390         * configure, configure.ac, config.host, Makefile.in:
1391           Revert to trunk version 167307.
1393 2011-02-23  Gary Funck  <gary@intrepid.com>
1395         * c-decl.c (undeclared_variable): fix typo. Inadvertently
1396         removed negation on following 'if'.
1398 2011-02-22  Gary Funck  <gary@intrepid.com>
1400         * c-decl.c (undeclared_variable): call upc_diagnose_deprecated_stmt
1401         to check for the usage of certain deprecated UPC keywords.
1402         * c-family/stub-upc.c (upc_diagnose_deprecated_stmt): New.
1403         * c-tree.h (undeclared_variable): Define prototype.
1405 2011-02-12  Gary Funck  <gary@intrepid.com>
1407         * c-typeck.c: (build_c_cast, convert_for_assignment)
1408           Diagnose an attempt to convert from an integer to
1409           a pointer-to-shared as an error.  Also, fix various
1410           error messages so that they use the preferred term
1411           pointer-to-shared instead of "shared pointer".
1413 2011-02-07  Gary Funck  <gary@intrepid.com>
1415         * c-typeck.c: (convert_for_assignment)
1416           Fix typo. in error message.
1418 2011-01-23  Gary Funck  <gary@intrepid.com>
1420         * c-typeck.c: (c_build_qualified_type)
1421           derive UPC block size by calling upc_get_block_size(),
1422           to ensure that the element type of an array of an array
1423           is derived correctly.
1425 2010-12-29  Gary Funck  <gary@intrepid.com>
1427         Merge trunk version 168314 into gupc branch.
1429 2010-12-15  Gary Funck  <gary@intrepid.com>
1431         Merge trunk version 167307 into gupc branch.
1433 2010-10-19  Gary Funck  <gary@intrepid.com>
1435         * c-typeck.c: Fix typo in previous fix
1436           which led to a mis-compare for equal block sizes.
1438 2010-10-18  Gary Funck  <gary@intrepid.com>
1440         * c-typeck.c: Fix bug: Cast of (shared <type> * shared) not
1441           diagnosed as an error
1443           The conversion from any type (shared or not) to
1444           a shared type is likely either meaningless or an error.  This update
1445           makes any conversion to a shared type, an error.
1447 2010-10-18  Gary Funck  <gary@intrepid.com>
1449         * c-typeck.c: Fix bug: passing int to shared pointer arg.
1450           generates spurious warning
1452           Add a #define procedure that does the same thing as
1453           WARN_FOR_ASSIGNMENT but issues an error diagnostic instead.  Use
1454           this procedure to diagnose passing an integer value to a
1455           pointer-to-shared as an error.
1457 2010-10-18  Gary Funck  <gary@intrepid.com>
1459         * c-typeck.c: Fix bug: shared [] in prototype silently ignored when
1460           matching routine declaration.
1462           When checking for type compatibility, shared qualified types must
1463           have the same block factor.  This check was missing from
1464           comptypes_internal().  This update adds the check for blocking
1465           factor equality.
1467 2010-10-17  Gary Funck  <gary@intrepid.com>
1469         * dwarf2out.c: Fix GCC Bug 45870 - note: non-delegitimized UNSPEC 5
1470           found (-O1 -g)
1472           See: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45870#c6
1474 2010-10-17  Gary Funck  <gary@intrepid.com>
1476         * tree-cfg.c: Implement the fix for GCC Bugzilla Bug
1477           45869 - [4.5/4.6 Regression] type mismatch in shift expression
1478           produces ice with -O3 and -m32.
1480           See: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45869
1482 2010-10-17  Gary Funck  <gary@intrepid.com>
1484         * c-common.c: Diagnose the application of the various "*sizeof"
1485           operations on generic pointer-to-shared as a compilation error.
1487 2010-10-17  Gary Funck  <gary@intrepid.com>
1489         * c-decl.c: Fix a segfault/ICE that occurred when printing an error
1490           message regarding a function parameter being declared with a shared
1491           qualifier.
1493           The parameter's 'name' value is not defined at this point, and
1494           cannot be used in the error message.  This update removes the
1495           reference to 'name', and eliminates the segfault.
1497 2010-10-16  Gary Funck  <gary@intrepid.com>
1499         * Makefile.in: Implement fixes for SGI/IRIX/MIPS port.
1501           The gcc/Makefile.in rules for install-plugin had to be re-written to
1502           break up a long list of header files that exceeded the command line
1503           limitation imposed by Irix.
1505           Access functions for TFmode types had to be implemented.
1506           Apparently, this is the mode used for the SGI/MIPS port to represent
1507           "long float".
1509 2010-10-14  Gary Funck  <gary@intrepid.com>
1511         * c-decl.c: Fix bug: Multiple equal blocking factors specified
1512           via typedef chain should not be diagnosed as an error.
1514           If the block size that is given by the typedef is equal to the block
1515           size given explicitly in the variable declaration, then do not
1516           complain.  The easiest way to make this check was to create a
1517           temporary type that is a clone of the element type and then set its
1518           block size using the given layout qualifier.  Then compare the block
1519           size of the temporary (the declaration) to the block size specified
1520           in the typedef.  This complexity is needed, because the '[*]' block
1521           size needs to be calculated, and the '[]' needs to be mapped into a
1522           zero block size.
1524 2010-10-10  Gary Funck  <gary@intrepid.com>
1526         * c-decl.c: Fix bug: ICE: two or more layout qualifiers
1527           specified
1529           The compiler properly detected the presence of two or more layout
1530           qualifiers as an error, but then hit an assertion check, because the
1531           code that followed the error expected to see a qualifier and not a
1532           layout specifier.  The fix is simple: just return immediately after
1533           detecting the error.
1535 2010-10-10  Gary Funck  <gary@intrepid.com>
1537         * c-decl.c: Improve error diagnostics for various cases of UPC
1538           shared array type declarations.
1540           Add the check for this error: "In the dynamic translation
1541           environment, THREADS may not appear in declarations of shared arrays
1542           with indefinite block size".  Also, fix up a few of the other
1543           related error diagnostics.
1545 2010-10-09  Gary Funck  <gary@intrepid.com>
1547         * c-common.c: Fix bug: segfault on incomplete array definition.
1549           This turned out to be a bit complicated.   The logic in
1550           upc_lang_layout_decl had to be re-arranged to avoid trying to lookup
1551           the THREADS identifier in the case where the blocking factor has
1552           been set to indefinite ([]).  This can happen when indefinite array
1553           declarations are processed for shared arrays.  At that time, the
1554           file scope has been closed and THREADS is no longer in scope.  Some
1555           more work is needed on upc_lang_layout_decl().  It has some
1556           duplication, and notably duplicates the two branches of the if
1557           having to do with TYPE_SIZE and TYPE_SIZE_UNIT, that appear in the
1558           caller of this routine (layout_decl()).
1560           The method of forcing a layout qualifier of [] in the indefinite
1561           declaration handler is odd a well.  The code that just does the
1562           setting of the block factor, needs to moved into its own routine
1563           that doesn't depend upon a declspec for '[]' to be passed in, just
1564           in order to set the blocking factor to some value (in this case, 0).
1565           Also, the logic for how that shared type is constructed is strange.
1566           First the type with 0 blocking factor is set.  Then the shared
1567           qualifier is removed from the type, and then added back later.  The
1568           intermediate type has a blocking factor set, but it has no shared
1569           qualifier.  Fixing this will require some thought.  It is tempting
1570           just to make indefinite shared arrays an error, rather than forcing
1571           the dimension to be '1'.
1573           This likely fixes a serious error in the previous update to
1574           upc_lang_layout_decl(), where it didn't have the logic to set
1575           TYPE_SIZE_UNIT() in the main part of the 'if' statement.  This means
1576           the previous update would fail on many tests.
1578 2010-10-09  Gary Funck  <gary@intrepid.com>
1580         * varasm.c: Add an assertion check for the case that DECL_SIZE_UNIT
1581           (decl) is null, which can happen if some layout error occurred
1582           upstream.
1584 2010-10-09  Gary Funck  <gary@intrepid.com>
1586         * c-decl.c: Fix bug: file scope shared arrays mis-diagnosed as
1587           "variable-sized" when compiled in dynamic threads.
1589           This long-standing bug is easily fixed.  Just check
1590           for the situation that the non-constant sized type is shared and
1591           that it does not have a dimension that references a multiple of
1592           threads.  If this criteria is met, then issue a meaningful
1593           diagnostic.
1595 2010-10-01  Gary Funck  <gary@intrepid.com>
1597         * configure, configure.ac: Update manual page, and bug reporting
1598           URL.
1600           Update "man" page to reflect debugging switches.  Also, some general
1601           clean up.  Change the bug reporting URL to point to gccupc.org.
1603 2010-09-27  Gary Funck  <gary@intrepid.com>
1605         * c-parser.c, config/upc-conf.h: Issue a descriptive message when
1606           the UPC forall depth count variable is not found.
1608           The __upc_forall_depth variable should be defined in gcc-upc-lib.h.
1609           The compiler will generate code that references this variable in
1610           order to implement nested upc_forall semantics.  If there is a
1611           compiler build or install problem, this variable may not be found.
1612           In this case, terminate with an internal_error().
1614 2010-09-26  Gary Funck  <gary@intrepid.com>
1616         * c-parser.c: Fix Bug 240: upc_forall with empty clauses
1617           mis-diagnosed as syntax error.
1619           Fix a failure exhibited by the Berkeley test case,
1620           bug873a.upc, which has the code:
1621                double d;
1622                upc_forall (;;;d) {...} The compiler did not properly handle
1623           the empty "condition" clause, and did not recover well when it was
1624           determined that the use of a double value, "d" above, was neither a
1625           pointer-to-shared nor an integer expression.  The update implements a
1626           fix for both issues.
1628           See also: gcc/c-parser.c gcc/upc/upc-act.c
1630 2010-09-23  Gary Funck  <gary@intrepid.com>
1632         * c-decl.c: Fix Bug 29: Layout qualifier within a typedef is not
1633           incorporated into the referencing type.
1635           This was semi-fixed a few times before.  This update fixes a few
1636           more places where the layout qualifier wasn't being propagated
1637           through typedef's properly.  What made this a bit tricky is shown in
1638           the example cited in the bug report:
1640           typedef shared [5] int A_t; A_t A[5*THREADS];
1642           In the typedef, the blocksize is being applied to a shared *scalar*,
1643           and the code was applying the blocksize only to arrays.  This update
1644           handles shared scalars correctly.
1646 2010-09-22  Gary Funck  <gary@intrepid.com>
1648         * c-parser.c, c-tree.h, stub-upc.c: Fix Bug 403: Nested
1649           upc_forall() semantics are not implemented
1651           The checkforall test in the Berkeley harness test suite indicated
1652           that GCC/UPC was not properly implementing nested upc_forall
1653           semantics.  Nested upc_forall statements (both statically or
1654           dynamically nested) must implement their affinity clause as if it
1655           were "continue"; thus all steps in the loop must execute without
1656           regard for affinity.  To implement these semantics a global depth
1657           counter, __upc_forall_depth, is maintained by the generated code
1658           that implements upc_forall.
1660           See also: gcc/c-parser.c gcc/c-tree.h gcc/stub-upc.c
1661           gcc/upc/upc-act.c gcc/upc/upc-act.h libupc/include/gcc-upc-lib.in
1662           libupc/include/upc.h libupc/smp/upc_main.c
1664 2010-09-19  Gary Funck  <gary@intrepid.com>
1666         * c-decl.c: c-decl.c: zero out the layout specifier, after
1667           processing an array type.
1669           Fix the previous fix, that moved the setting of the type's layout
1670           qualifier to the outside of the array type processing loop.  What is
1671           missing from the fix is that the layout_qualifier variable needs to
1672           be cleared after setting the type's blocksize.
1674 2010-09-19  Gary Funck  <gary@intrepid.com>
1676         * config/upc-conf.h: Fix Bug 375: error message is off-by-one when
1677           given blocksize is greater than UPC_MAX_BLOCKSIZE.
1679           The value we were using for UPC_MAX_BLOCK_SIZE was one bigger than
1680           the actual maximum block size.  Therefore, the message was correct,
1681           but the underlying value that was being checked was wrong.  Change
1682           the values so that they agree with the actual implementation-defined
1683           limit.
1685 2010-09-11  Gary Funck  <gary@intrepid.com>
1687         * c-decl.c: Fix Bug 402: ICE: '[*]' layout factor on
1688           multi-dimensional shared array with dynamic threads.
1690           This declaration caused an internal compiler error when compiled
1691           with dynamic threads:
1692               shared [*] int A[THREADS][16]; The bug was discovered when
1693           compiling the RTED_UPC test suite.
1695           The fix is to process layout qualifiers after the entire array type
1696           has been built.  Otherwise, we try to calculate the blocksize on a
1697           shared array type that has not had its "size depends upon the value
1698           of THREADS" flag set.
1700           Also, added a test case.
1702           See also: libupc/testsuite/libupc.upc/intrepid/test18.upc
1704 2010-07-11  Gary Funck  <gary@intrepid.com>
1706         Fix a bug where a statement in c_build_qualified_type()
1707         in the trunk had been inadvertently deleted.
1708         This bug showed up in the IA64 port, because jmpbuf's
1709         on that architecture must be 16 byte aligned, and they were not.
1710         c-typeck.c (c_build_qualified_type): Revive the deleted line.
1712 2010-07-08  Gary Funck  <gary@intrepid.com>
1714         Make changes so that other language compilers
1715         will build and bootstrap.
1716         * c-family/c-common.c (compiling_upc, flag_upc,
1717         flag_upc_instrument, flag_upc_instrument_functions,
1718         use_upc_dwarf2_extensions): Move to stub-upc.c and
1719         upc-lang.c.
1720         * c-family/c-common.h (use_upc_dwarf2_extensions,
1721         compiling_upc): Add extern definitions - needed
1722         to compile/build other language front ends.
1723         * c-family/c.opt: Fix the spelling of ObjC.
1724         It had been incorrectly spelled as Objc.
1725         * c-family/c.opt: Add UPC for the various switches
1726         that are valid for both C and ObjC.
1727         * c-fmaily/c-opts.c: Add CL_UPC to the list of
1728         supported options switches when compiling assembly
1729         language.
1730         * lto/lto-lang.c (use_upc_dwarf2_extensions,
1731         flag_upc_instrument, flag_upc_instrument_functions):
1732         Remove these definitions.  They have been moved
1733         to c-family/stub-upc.c.
1734         * upc/ChangeLog: Move relevant entries
1735         to ChangeLog.upc.
1736         * c-family/stub-upc.c (compiling_upc, flag_upc,
1737         flag_upc_instrument, flag_upc_instrument_functions,
1738         use_upc_dwarf2_extensions): Moved from c-common.c
1739         * upc/upc-lang.c (compiling_upc, flag_upc,
1740         flag_upc_instrument, flag_upc_instrument_functions,
1741         use_upc_dwarf2_extensions): Moved from c-common.c
1742         * objc/objc-act.c (objc_gimplify_expr): Add additional
1743         parameters to c_gimplify_expr() call, that are used
1744         by upc's tree rewrites.
1745         * cp/cp-gimplify.c (cp_gimplify_expr): Likewise.
1746         * gcc/cp/lex.c (init_reswords): If not compiling
1747         UPC, then mask off the UPC keywords.
1748         * cp/Make-lang.in (C_STUB_OBJS): Use this
1749         make macro to link with c-family/stub-objc.o
1750         and c-family/stub-upc.o.
1751         * fortran/Make-lang.in (C_STUB_OBJS): Likewise.
1752         * java/Make-lang.in (C_STUB_OBJS): Likewise.
1753         * objc/Make-lang.in: Link with c-family/stub-upc.o
1754         to avoid undefined references.
1755         c-parser.c: Fix line indentation.
1756         * libcpp/include/cpplib.h: Remove CL_UPC from
1757         the list of language kinds accepted by the
1758         C preprocessor.  This is not necessary because
1759         UPC is a derivative of C99, and does not need
1760         a different language kind.
1761         * c-fmaily/c-opts.c (c_common_handle_option):
1762         Call set_std_c99() when processing the
1763         "--lang upc" switch, instead of setting the
1764         language kind to CL_UPC.
1765         * libupc/testsuite/libupc.upc/intrepid/ChangeLog: New.
1767 2010-07-03  Gary Funck  <gary@intrepid.com>
1769         Merge trunk version 161517 into gupc branch.
1770         * gcc/stub-upc.c: Move to gcc/c-family/.
1771         * libupc/testsuite/libupc.upc/intrepid/test19.upc:
1772         Add 'unused' attributes to avoid "set, but
1773         not referenced" warnings.
1774         * libupc/testsuite/libupc.upc/intrepid/test18.upc:
1775         Likewise.
1777 2010-03-01 Gary Funck  <gary@intrepid.com>
1779         Create gupc branch from trunk version 157149.
1780 2011-10-04  Gary Funck  <gary@intrepid.com>
1782         Merge trunk version 179421 into gupc branch.
1784         * tree.c (build_opaque_vector_type): Add null UPC layout qualifier
1785         argument to the call to check_qualified_type().
1787 2011-09-22  Gary Funck  <gary@intrepid.com>
1789         * tree-pretty-print.c (dump_generic_node): Print UPC type qualifier
1790         information.
1791         (dump_upc_type_quals): New.
1793 2011-09-15  Nenad Vukicevic <nenad@intrepid.com>
1795         Add to FLAGS the flags needed to disable inlining of
1796         UPC run-time access routines.
1797         * testsuite/lib/target-supports.exp
1798         (add_options_for_upc_library_calls): New.
1800 2011-09-15  Gary Funck  <gary@intrepid.com>
1802         Fix ICE involving shared bit field accesses.
1803         * tree.c (build3_stat): Propagate TEEE_SHARED()
1804         TREE_STRICT() and TREE_RELAXED() flags, if applicable.
1806 2011-09-13  Gary Funck  <gary@intrepid.com>
1808         Merge trunk version 178795 into gupc branch.
1809         Incorporates fix to PR bootstrap/50010 for x86-32.
1811 2011-09-08  Gary Funck  <gary@intrepid.com>
1813         Merge trunk version 178557 into gupc branch.
1815 2011-09-07  Gary Funck  <gary@intrepid.com>
1817         Ensure that UPC pointer-to-shared type alignment is
1818         propagated to the final type.  Revert to long-standing
1819         alignment policy: twice the size of a "C" pointer.
1820         * tree.c (build_pointer_type): Propagate the alignment
1821         of the UPC pointer-to-shared representation type
1822         into the newly built pointer type.
1824 2011-08-30  Gary Funck  <gary@intrepid.com>
1826         * tree.h (check_qualified_type): Change 'const_tree'
1827         argument types back to 'tree' to avoid complaints
1828         of assignment drops qualifiers for invocations of the
1829         newly implemented TYPE_BLOCK_FACTOR() macro, which
1830         invokes hash functions with 'tree' pointer values that
1831         are not const qualified.
1832         * tree.c (check_qualified_type, check_aligned_type): Ditto.
1833         * c-typeck.c (comptypes_internal): Ditto.
1835 2011-08-29  Gary Funck  <gary@intrepid.com>
1837         Fixes for regressions noted running "make check"
1838         versus GCC trunk.
1839         * fold-const.c (fold_unary_loc): Execute UPC-specific
1840         checks for a cast-of-a-cast, only if one of the
1841         operands is a UPC pointer-to-shared value.
1842         * opts.c (print_specific_help):  Fix a comparison
1843         in an assert that checks that there are enough
1844         bits reserved for the number of languages defined
1845         in the .opt files.
1847 2011-08-29  Gary Funck  <gary@intrepid.com>
1849         Implement a hash table to record UPC block factors.
1850         * c-family/stub-upc.c (upc_block_factor_insert,
1851         upc_block_factor_lookup): New dummy stub procedures.
1852         * c-family/c-common.c (c_sizeof_or_alignof_type):
1853         Rename UPC_TYPE_HAS_THREADS_FACTOR() to TYPE_HAS_THREADS_FACTOR().
1854         * tree.c (copy_node_stat): call SET_TYPE_BLOCK_FACTOR()
1855         to copy (hashed) UPC blocking factor.
1856         (set_type_quals): Likewise.
1857         * tree.h: Rename UPC_TYPE_HAS_THREADS_FACTOR() to
1858         TYPE_HAS_THREADS_FACTOR().
1859         (type_common.block_factor): Delete.
1860         (TYPE_HAS_BLOCK_FACTOR_0, TYPE_HAS_BLOCK_FACTOR_X,
1861         TYPE_HAS_BLOCK_FACTOR, SET_TYPE_BLOCK_FACTOR): New.
1862         (TYPE_BLOCK_FACTOR): Re-implement, using hash table for
1863         UPC blocking factors greater than one.
1864         * dwarf2out.c (modified_type_die): Re-implement
1865         logic that records UPC blocking factor in the generated
1866         DWARF2 debugging information.
1867         (add_subscript_info): Rename UPC_TYPE_HAS_THREADS_FACTOR() to
1868         TYPE_HAS_THREADS_FACTOR().
1869         * c-decl.c (finish_decl, grokdeclarator):
1870         Rename UPC_TYPE_HAS_THREADS_FACTOR() to TYPE_HAS_THREADS_FACTOR().
1871         * print-tree.c (print_node): Check for TYPE_LANG_FLAG_* flags
1872         used by UPC, and print UPC-specific information.
1874 2011-08-28  Gary Funck  <gary@intrepid.com>
1876         Re-work the type machinery to fully support and to unify support
1877         for the UPC layout qualifier (blocking factor).
1878         * c-family/stub-upc.c (upc_set_block_factor): Delete.
1879           (upc_grok_layout_qualifier): rename from upc_apply_layout_qualifier()
1880           and update prototype.
1881         * c-family/c-common.c (complete_array_type): call newly
1882           defined c_build_qualified_type_1() instead of
1883           upc_set_block_factor().
1884         * c-family/c-upc.h (pc_grok_layout_qualifier): rename from
1885           upc_apply_layout_qualifier() and update prototype.
1886           (upc_set_block_factor): Delete prototype.
1887         * c-family/c-common.h (c_build_qualified_type): redefine
1888           as a pre-processor macro that invokes c_build_qualified_type_1()
1889           with a null UPC layout qualifier.
1890           (c_build_qualified_type_1): New.  Add layout qualifier argument
1891           to old c_build_qualified_type() prototype.
1892         * tree.c (set_type_quals, check_qualified_type):
1893           Add layout qualifier as argument.
1894           (check_aligned_type): Add check for UPC block factor equality.
1895           (get_qualified_type_1): Rename from get_qualified_type() and
1896           add layout qualifier as argument.
1897           (build_qualified_type_1): Rename from build_qualified_type() and
1898           add layout qualifier as argument.
1899         * tree.h (check_qualified_type): Add layout qualifier as argument
1900           to the prototype.
1901           (get_qualified_type): Re-define as a as a pre-processor macro
1902           that invokes get_qualified_type_1() with a null
1903           UPC layout qualifier.
1904           (get_qualified_type_1): Rename from get_qualified_type() and
1905           add layout qualifier as argument.
1906         * cp/tree.c (c_build_qualified_type_1): Rename from
1907           c_build_qualified_type() and add (unused) layout qualifier
1908           argument.
1909         * c-decl.c (finish_decl): re-format long error messages.
1910           (grokdeclarator): Re-work the logic so that it calls
1911           upc_grok_layout_qualifier() to handle the UPC layout
1912           qualifier, if present.
1913         * c-typeck.c (qualify_type, common_pointer_type,
1914           build_component_ref): Re-work the logic so that it calls
1915           upc_grok_layout_qualifier() to handle the UPC layout qualifier,
1916           if present.
1917           (c_build_qualified_type_1): Rename from c_build_qualified_type()
1918           and add layout qualifier argument.
1919         * print_tree.c (print_node): Re-format a long line.
1921 2011-08-26  Gary Funck  <gary@intrepid.com>
1923         Merge trunk version 177949 into gupc branch.
1924         * c-family/c-common.h (enum rid): Bump the number of type modifiers
1925           in the comment.
1926         * ../libcpp/init.c (struct lang_flags): Adjust the entry for UPC
1927           to add new rliterals column value.
1929 2011-08-26  Gary Funck  <gary@intrepid.com>
1931         * convert.c (convert_to_integer): Fix the check for the
1932           difference between two UPC pointers-to-shared values.
1934 2011-08-23  Nenad Vukicevic <nenad@intrepid.com>
1936         * configure.ac: Fix the name for --with-upc-pts-packed-bits
1937           option. Support --with-upc-packed-bits as deprecated. Fix the code to
1938           correctly check packed bits.
1939         * configure: Re-generate.
1941 2011-08-16  Gary Funck  <gary@intrepid.com>
1943         * c-parser.c (c_parser_upc_sync_statement): issue error diagnostic if
1944           the barrier id expression is not an integer expression.
1946 2011-08-12  Gary Funck  <gary@intrepid.com>
1948         * config/i386/i386.h (MAX_FIXED_MODE_SIZE): Delete
1949           (revert to trunk).
1950         * upc/upc-pts-struct.c (upc_pts_struct_init_type):
1951           Set mode of UPC pointer-to-shared rep. to an
1952           integral mode of size at least as large as the
1953           size of the representation's struct type.
1955 2011-08-12  Gary Funck  <gary@intrepid.com>
1957         Rework/simplify the UPC genericize pass.
1958         * c-family/stub-upc.c (upc_apply_layout_qualifier,
1959           upc_build_pointer_type): New.
1960           (upc_set_block_factor): Adjust to new calling sequence.
1961           (upc_build_shared_var_addr): Delete.
1962         * c-family/c-common.c (complete_array_type): Adjust call
1963           to upc_set_block_factor().
1964         * c-family/c-upc.h (upc_apply_layout_qualifier,
1965           upc_build_pointer_type): New.
1966           (upc_build_shared_var_addr): Delete.
1967           (upc_set_block_factor): Adjust to new calling sequence.
1968         * tree.h (TI_UPC_CHAR_PTS_TYPE, upc_char_pts_type_node): New.
1969         * c-decl.c (grokdeclarator): Call newly defined
1970           upc_apply_layout_qualifier() instead of upc_set_block_factor().
1971         * c-decl.c (grokdeclarator): Split long UPC-related error
1972           messages into two lines.
1973         * c-typeck.c (build_unary_op): Do not call upc_build_shared_var_addr()
1974           directly.  Revert that change to trunk. (upc_genericize() will
1975           handle lowering the expressions that take the address of a
1976           UPC variable).
1977         * config/i386/i386.c (ix86_promote_function_mode): For UPC
1978           pointers-to-shared, return the type mode of the UPC pointer-to-shared
1979           representation type.
1981 2011-08-10  Gary Funck  <gary@intrepid.com>
1983         Implement additional fixes for recent merge with trunk.
1984         * explow.c (promote_mode): Do not attempt to promote
1985           the mode for UPC pointer-to-shared types.
1986         * config/i386/i386.c (function_value_64): Ditto.
1988 2011-08-07  Gary Funck  <gary@intrepid.com>
1990         Merge trunk version 177548 into gupc branch.
1991         * config/i386/i386.c (ix86_promote_function_mode):
1992           Do not promote UPC pointers-to-shared to Pmode.
1993         * c-family/c-ommon.c (pointer_int_sum):
1994           Also check the pointer operand, rather than just
1995           its type, when making the decision to derive
1996           the equivalent unshared type.
1997         * tree.c (build2_stat): If the type of the result
1998           passed in as an argument is a UPC shared type,
1999           derive the unshared equivalent when calculating
2000           the result type of the node.
2002 2011-07-15  Nenad Vukicevic <nenad@intrepid.com>
2004         * config/darwin.c: Disable var_tracking option
2005           on -O0 as it is supposed to run only when optimization
2006           is applied. See GCC bug 49743.
2008 2011-07-06  Gary Funck  <gary@intrepid.com>
2010         Re-implement the pass that lowers trees generated by
2011         the UPC front-end into GENERIC.  Previously this was
2012         done within the gimplification framework, but this
2013         required that gimplification be run before inlining
2014         and various other passes, which did not fit in well
2015         with the current design of the middle-end passes.
2016         Now, the lowering is done by a newly defined language
2017         specific genericize hook.  With this change, we are
2018         are able to undo some extensions made to the gimplify
2019         logic, and thus can revert several files to trunk.
2021         * c-decl.c: Add a check for UPC deprecated names which
2022           may appear as undefined function names.
2023         * libfuncs.h (LTI_upc_barrier, LTI_upc_notify, LTI_upc_wait,
2024           LTI_upc_getaddr): Remove definitions of unused UPC
2025           library function names.  These were defined back when
2026           the libfunc interface was used to call these routines.
2027         * timevar.def (TV_TREE_UPC_GENERICIZE): New. Track time spent
2028           in UPC lowering (genericize) pass.
2029         * langhooks.h (gimplify_expr): Revert to trunk's definition.
2030           (instrument_func): Delete this hook.  Now handled in
2031           upc_genericize().
2032         * tree-pass.h: Revert to trunk.
2033         * c-typeck.c (build_unary_op): Adjust reference to
2034           upc_genericize() in a comment.
2035         * gimplify.c (create_tmp_var_raw): Delete logic that
2036           was converting UPC shared types into unshared types
2037           to be used for temporaries.  Now handled in  upc_genericize().
2038           Replace with an assertion check.
2039           (prepare_gimple_addressable): Revert to trunk's definition.
2040           No longer needed as an externally called function.
2041           (flag_instrument_functions_exclude_p): Re-define as
2042           an externally called function.
2043           (gimplify_function_tree): Delete code that implemented
2044           call to UPC's language specific function instrumentation hook.
2045         * gimple.h (flag_instrument_functions_exclude_p): Define as extern.
2046           (prepare_gimple_addressable): Delete extern definition;
2047           revert to trunk's definition.
2048         * lnaghooks-def.h (lhd_gimplify_expr): Revert to trunk's definition.
2049           (LANG_HOOKS_INSTRUMENT_FUNC): Remove, no longer needed for UPC.
2050         * c-family/c-gimplify.c: Revert to trunk.
2051         * cp/cp-gimplify.c: Revert to trunk.
2052         * cp/cp-tree.h: Revert to trunk.
2053         * explow.c: Revert to trunk.
2054         * langhooks.c: Revert to trunk.
2055         * libfuncs.h: Revert to trunk.
2056         * objc/objc-act.c: Revert to trunk.
2058 2011-06-30  Gary Funck  <gary@intrepid.com>
2060         * c-family/c.opt: Bring options definitions up-to-date
2061         with respect to changes made in the trunk.
2063 2011-06-29  Gary Funck  <gary@intrepid.com>
2065         Merge trunk version 175584 into gupc branch.
2067 2011-06-13  Gary Funck  <gary@intrepid.com>
2069 libcpp/
2070         * include/cpplib.h (enum c_lang):
2071         Move the entry for CLK_UPC so that it follows CLK_STDC1X.
2072         This keeps all the "C" variants together.
2073         * init.c (lang_defaults): Add an entry for UPC.
2075 2011-06-09  Gary Funck  <gary@intrepid.com>
2077         * c-parser.c (upc_localsizeof_type): Fix an ICE when compiling for
2078         a 32-bit target, the size expression overflowed, the result was
2079         error_mark_node, and an ICE was triggered on an attempt to evaluate
2080         C_TYPE_VARIABLE_SIZE() on the error node.
2081         (upc_blocksizeof_expr, upc_blocksizeof_type,
2082         upc_elemsizeof_expr, upc_elemsizeof_type, upc_localsizeof_expr):
2083         Make similar changes to avoid further processing of error_mark_node.
2085 2011-06-07  Gary Funck  <gary@intrepid.com>
2087         * sel-sched.c (move_op): Incorporate the following
2088         patch to eliminate ICE at -O3 on IA64/Altix.
2090 2011-06-07  Alexander Monakov  <amonakov@ispras.ru>
2092         * sel-sched.c (move_op): Use correct type for 'res'.  Verify that
2093         code_motion_path_driver returned 0 or 1.
2094         (sel_region_finish): Clear h_d_i_d.
2096 2011-06-02  Gary Funck  <gary@intrepid.com>
2098         Merge trunk version 174558 into gupc branch.
2100 2011-05-30  Gary Funck  <gary@intrepid.com>
2102         * configure.ac: Make the default order of the virtual
2103           address field in a UPC pointer-to-shared to be "first".
2104           This reverts to the previous setting, and is a short term
2105           measure to work around a bug found on the IA64,
2106           where vaddr=last led to incorrect code generation.
2107           Rename UPC_PTS_VADDR_FIRST to HAVE_UPC_PTS_VADDR_FIRST
2108           in AC_DEFINE(), to agree with recent changes in files
2109           that reference this define.
2110           configure, config.in: Regenerate.
2112 2011-05-26  Gary Funck  <gary@intrepid.com>
2114         * configure.ac: Fix typo when referring to $upc_vaddr_order.
2115           configure: Regenerate.
2117         * ../fixincludes/fixincl.x: Revert to trunk.
2118           This file is auto-generated, and should not be merged.
2120 2011-05-18  Gary Funck  <gary@intrepid.com>
2122         Merge trunk version 173845 into gupc branch.
2124 2011-05-17  Gary Funck  <gary@intrepid.com>
2126         * c-family/stub-upc.c (upc_rts_forall_depth_var): New.
2127           c-family/c-upc.h (upc_rts_forall_depth_var): Define.
2129         * c-family/c-pragma.c: Remove conditional compilation
2130           with HANDLE_PRAGMA_UPC and HANDLE_PRAGMA_PUPC.
2131           Test 'compiling_upc' when compiling to determine if
2132           the "upc" and "pupc" pragmas should be registered.
2134         * defaults.h (UPC_SHARED_SECTION_NAME, UPC_SHARED_BEGIN_NAME,
2135           UPC_SHARED_END_NAME, UPC_PGM_INFO_SECTION_NAME,
2136           UPC_PGM_INFO_BEGIN_NAME, UPC_PGM_INFO_END_NAME,
2137           UPC_INIT_SECTION_NAME, UPC_INIT_BEGIN_NAME,
2138           UPC_INIT_END_NAME, UPC_INIT_ARRAY_SECTION_NAME,
2139           UPC_INIT_ARRAY_BEGIN_NAME, UPC_INIT_ARRAY_END_NAME): New.
2140           Move these target-dependent definitions from config/upc-conf.h
2141           to here.
2143         * configure.ac: Improve the logic for UPC-related options.
2144           Delete references to pre-processor definitions that have
2145           been moved to "upc/upc-pts.h".
2147         * configure, config.in: Regenerate.
2149         * Makefile.in (UPC_PTS_REP): Remove definition and revert
2150           to trunk.  This substitution variable was used to
2151           configure the representation-specific versions of
2152           the tree rewrites that operate on UPC pointer-to-shared
2153           types and objects.
2155         * c-parser.c (c_parser_upc_forall_statement): Remove
2156           reference to UPC_FORALL_DEPTH_NAME, and call
2157           newly defined upc_rts_forall_depth_var() instead.
2159         * config/upc-config.h: Delete. Various definitions
2160           moved to "upc/upc-rts-names.h", "defaults.h", and
2161           "upc/upc-pts.h".
2163         * doc/tm.texi.in (HAVE_UPC_PTS_VADDR_FIRST,
2164           HAVE_UPC_PTS_PACKED_REP, HAVE_UPC_PTS_STRUCT_REP,
2165           UPC_SHARED_SECTION_NAME, UPC_SHARED_BEGIN_NAME,
2166           UPC_SHARED_END_NAME, UPC_PGM_INFO_SECTION_NAME,
2167           UPC_PGM_INFO_BEGIN_NAME, UPC_PGM_INFO_END_NAME,
2168           UPC_INIT_SECTION_NAME, UPC_INIT_BEGIN_NAME,
2169           UPC_INIT_END_NAME, UPC_INIT_ARRAY_SECTION_NAME,
2170           UPC_INIT_ARRAY_BEGIN_NAME, UPC_INIT_ARRAY_END_NAME):
2171           New.  Document UPC target macros.
2172           doc/tm.texi: Regenerate.
2174 2011-05-07  Gary Funck  <gary@intrepid.com>
2176         * ../configure.ac: Disable build of libupc
2177           on non POSIX hosted systems.  Use AS_HELP_STRING
2178           to define messages.  Remove 'word-pair' as a
2179           possible --with-upc-pts UPC pointer-to-shared
2180           representation.
2182         * ../configure: Regenerate.
2184         * configure.ac: Use AS_HELP_STRING to define messages.
2185           Remove 'word-pair' as a possible --with-upc-pts
2186           UPC pointer-to-shared representation.
2187           (UPC_MAX_THREADS): Limit the maximum value to 2^31-1.
2188           (UPC_MAX_BLOCK_SIZE): Correct the default value.
2190         * configure: Regenerate.
2192         * config.in: Regenerate. Delete UPC_PTS_WORD_PAIR_REP
2193           definition.
2195         * ChangeLog.upc: Fix some typos.
2197 2011-05-07  Gary Funck  <gary@intrepid.com>
2199         * ../maintainer-scripts/gcc_release: Add "upc"
2200           as one of the released languages.
2202 2011-05-06  Gary Funck  <gary@intrepid.com>
2204         Eliminate compilation warnings, by fixing
2205         #include's and updating function prototypes.
2207         * c-family/c-cppbuiltin.c: Include c-upc.h.
2209         * optabs.c (gen_libfunc): Change type of 'suffix'
2210           parameter to conform with prototype.
2212         * cp/cp-gimplify.c (cp_gimplify_expr): Add extra parameters
2213           ('gimple_test_f' and 'fallback') used by extended gimplify_expr
2214           hook used by UPC.
2216         * cp/cp-tree.h (cp_gimplify_expr): Add extra parameters to
2217           the prototype.
2219         * objc/objc-act.c (objc_gimplify_expr): Pass extra dummy
2220           argument values to cp_gimplify_expr.
2222         * config.in (HAVE_UPC_AFFINITY_SUPPORT,
2223           HAVE_UPC_NUMA_SUPPORT): Regenerate.  Remove
2224           pre-processor definitions that are no longer
2225           needed to build the 'upc' command (upc-cmd.c)
2226           because the linker specs. defined in libupc
2227           take care of linking in the needed libraries.
2229         * c-parser.c (c_parser_upc_forall_statement):
2230           initialize affinity_loc to avoid "maybe unused" warning.
2231           (c_parser_upc_sync_statement): Remove un-needed
2232           'ret' variable.  Cast return value from
2233           'upc_build_sync_stmt' to 'void' to avoid
2234           compile-time warning.
2236         * config/upc-conf.h (UPC_MAX_THREADS): Define as an
2237           integer constant, not a string.  Range is restricted
2238           to maximum positive 32-bit integer (2+ billion) to
2239           fit in with the use of 'int' in the front-end's
2240           switch handling logic.
2242 2011-05-06  Gary Funck  <gary@intrepid.com>
2244         Upgrade c-family source files to conform with modularity
2245         improvements.  Mainly, remove #include of c-tree.h in files
2246         under c-family, and define a new UPC-specific #include file,
2247         c-upc.h, and use it.
2249         * c-family/stub-upc.c: Remove #include of c-tree.h and
2250           upc/upc-act.h.  Replace with #include of c-common.h
2251           and c-upc.h.
2252           (upc_get_unshared_type, upc_pts_cvt_op_p, upc_blocksizeof_expr,
2253           upc_blocksizeof_type, upc_elemsizeof_expr, upc_elemsizeof_type,
2254           upc_localsizeof_expr, upc_localsizeof_type,
2255           upc_shared_type_p): Delete.
2257         * c-family/c-opts.c: Add #include of c-upc.h
2259         * c-family/c-common.c: Remove #include of c-tree.h and
2260           add #include of c-upc.h.
2262         * c-family/c-upc.h: New. Define API for UPC-specific functions
2263           (mostly implemented in upc/upc-act.c).
2265         * c-family/c-common.h (upc_cpp_builtins, upc_write_global_declarations):
2266           Remove extern definitions.
2268         * c-family/c-pragma.c: Remove #include of c-tree.h.
2269           Add #include of c-upc.h.
2271         * tree.h (UPC_TYPE_HAS_THREADS_FACTOR): New.  Move from
2272           c-tree.h.
2273           (upc_shared_type_p, upc_pts_cvt_op_p): New.  Move from
2274           upc/upc-act.c, and define as a macro.
2275           (expand_affinity_test): Remove unused external definition.
2276           (build_upc_unshared_type): Add external definition.
2277           (upc_shared_type_p): Remove external definition.
2279         * c-config-lang.in: Update gtfiles to refer to c-family/c-upc.h.
2281         * dojump.c: Remove #include of c-tree.h.
2283         * c-tree.h: Remove definition of UPC_TYPE_HAS_THREADS_FACTOR
2284           and move to tree.h.
2285           (count_upc_threads_refs, is_multiple_of_upc_threads,
2286           set_upc_threads_refs_to_one, c_expr, upc_affinity_test,
2287           upc_build_shared_var_addr, upc_build_sync_stmt,
2288           upc_check_decl_init, upc_check_decl, upc_decl_init, c_expr,
2289           upc_get_block_factor, upc_instrument_forall, upc_is_null_pts_p,
2290           c_expr, upc_num_threads, upc_diagnose_deprecated_stmt,
2291           upc_pts_cvt_op_p, upc_pts_diff, upc_pts_increment,
2292           upc_pts_int_sum, upc_set_block_factor, upc_set_decl_section,
2293           permit_pragma_upc, deny_pragma_upc, pragma_upc_permitted_p,
2294           set_upc_consistency_mode, get_upc_consistency_mode,
2295           push_upc_consistency_mode, pop_upc_consistency_mode,
2296           get_upc_pupc_mode):
2297           Move external definitions to c-family/c-upc.h.
2298           (upc_blocksizeof_type, upc_localsizeof_type,
2299           upc_elemsizeof_type): Remove external definitions;
2300           these functions were moved to c-parser.c.
2302         * c-decl.c: Add #include of c-upc.h.
2304         * c-typeck.c: Add #include of c-upc.h.
2306         * c-convert.c: Add #include of c-upc.h.
2308         * ChangeLog.upc: Fix typo.
2310         * Makefile.in: Add references to c-family/c-upc.h, everywhere
2311           there is a reference to c-family/c-objc.h.
2312           Remove extraneous reference to upc-act.h.
2314         * c-parser.c: Add #include of c-upc.h.
2315           (upc_blocksizeof_expr, upc_blocksizeof_type,
2316           upc_elemsizeof_expr, upc_elemsizeof_type,
2317           upc_localsizeof_expr, upc_localsizeof_type):
2318           Move from upc/upc-act.c.
2320         * tree.c (build_upc_unshared_type): New.
2321           Move upc_get_unshared_type from upc/upc-act.c and rename
2322           to build_upc_unshared_type.
2323           c-family/c-common.c (pointer_int_sum): refer to renamed
2324           build_upc_unshared_type function.
2325           c-convert.c (convert): Ditto.
2326           convert.c (convert_to_pointer): Ditto.
2327           c-typeck.c (build_unary_op, build_modify_expr,
2328           really_start_incremental_init): Ditto.
2329           gimplify.c (create_tmp_var_raw): Ditto.
2330           tree.c (build1_stat): Ditto.
2331           tree.h (upc_get_unshared_type): Rename to
2332           build_upc_unshared_type.
2334 2011-05-06  Gary Funck  <gary@intrepid.com>
2336         Merge trunk version 173471 into gupc branch.
2338 2011-05-05  Gary Funck  <gary@intrepid.com>
2340         Make changes that bring the GUPC branch more closely in sync.
2341         with the GCC trunk.  Revert any fixes that are not UPC-specific.
2342         Remove gratuitous re-formatting.
2344         * ../libstdc++-v3/config/os/bionic/ctype_noninline.h: Delete.
2345           This file should have been removed in a previous merge
2346           with the trunk.
2347         * ../configure.ac: Remove Cray Catamount/CNL support.
2348         * ../configure: Regenerate.
2349         * ../config.sub: Remove Cray Catamount/CNL support.
2350         * config.gcc: Remove Cray Catamount/CNL support.
2351         * ../maintainer-scripts/gcc_release: Revert to trunk.
2352         * c-family/c-common.h: Define parse_optimize_options.  Its definition
2353           was missed in a previous merge with the trunk.
2354         * dwarf2out.c: Revert a fix which removed the 'type_main_variant'
2355           procedure.
2356         * dwarf2out.c: Revert a fix that added a check for VECTOR_TYPE
2357           in addition to ARRAY_TYPE.
2358         * c-typeck.c: Remove an extra newline character.
2359         * varasm.c: Revert a fix that improved an error message
2360           when TLS common data is unimplemented.
2361         * varasm.c: Revert a gcc_assert that had been added which
2362           checked for a null DECL_SIZE_UNIT field.
2363         * emultls.c: Revert to trunk. Remove possible fix.
2364         * Makefile.in: Revert extra blank line that is present
2365           in the trunk version.
2366         * Makefile.in: Revert a fix that handled long shell
2367           argument lists for plugin headers.
2368         * config/ia64/ia64.opt: Revert an option setting
2369           that increased the default TLS address range.
2370         * config/ia64/crtbegin.asm: Revert to trunk.
2371           Removes an extra newline character.
2372         * ChangeLog.upc: Spell check.
2374 2011-05-03  Gary Funck  <gary@intrepid.com>
2376         * c-family/c-common.c: Remove extraneous FIXME/TODO comments.
2377           (c_apply_type_quals_to_decl): Ditto.
2378         * c-family/c-common.h: Ditto.
2379         * dojump.c: Ditto.
2380         * c-decl.c (merge_decls): Ditto.
2381         * c-typeck.c (qualify_type, default_conversion,
2382           build_component_ref, build_unary_op,
2383           c_build_qualified_type): Ditto.
2384         * gimplify.c (create_tmp_var_raw): Remove UPC-specific dead code.
2386 2011-04-29  Gary Funck  <gary@intrepid.com>
2388         * c-decl.c (finish_decl): Improve error diagnostics.
2389           (grokdeclarator): Ditto.
2391         * c-typeck.c (build_c_cast): Improve error diagnostics.
2392           (convert_for_assignment): Ditto.
2393           (build_binary_op): Ditto.
2395         * c-parser.c (c_parser_upc_forall_statement):
2396           Improve error diagnostics.
2398         * convert.c (convert_to_integer):  Improve error diagnostics.
2400 2011-04-24  Gary Funck  <gary@intrepid.com>
2402         * c-parser.c (c_parser_upc_sync_statement): Fix ICE that
2403           occurred if there is an error in the barrier id
2404           expression.  Map error_mark_node into NULL.
2406 2011-04-22  Gary Funck  <gary@intrepid.com>
2408         Merge trunk version 172873 into gupc branch.
2410 2011-04-19  Gary Funck  <gary@intrepid.com>
2412         Merge trunk version 172359 into gupc branch.
2414 2011-04-14  Gary Funck  <gary@intrepid.com>
2416         * c-family/c.opt: Add UPC as a valid language for various
2417           switches where it is valid for "C", that were not updated
2418           in previous merges with trunk.
2420 2011-04-13  Gary Funck  <gary@intrepid.com>
2422         * c-family/c.opt (fupc-pre-include): New option definition.
2423         * gcc.c (upc_options): Do not add "-include gcc-upc.h" if
2424           -fno-upc-pre-include is asserted.
2426 2011-04-07  Gary Funck  <gary@intrepid.com>
2428         Merge trunk version 172158 into gupc branch.
2429         to bring in the following fix.
2431 2011-04-05  Bernd Schmidt  <bernds@codesourcery.com>
2433         PR bootstrap/48403
2434         * haifa-sched.c (schedule_block): Increment cycle_issued_insns only
2435         if old and new states differ.
2437 2011-04-06  Gary Funck  <gary@intrepid.com>
2439         Merge trunk version 171966 into gupc branch.
2441 2011-04-01  Gary Funck  <gary@intrepid.com>
2443         * tree.h (tree_base): Move UPC flag bits into bit fields
2444           located just before spare bits.  Decrement spare bits.
2445           Rename 'shared_flag' -> 'upc_shared_flag',
2446           'relaxed_flag' -> 'upc_relaxed_flag',
2447           'strict_flag' -> 'upc_strict_flag, and adjust macros
2448           that reference them accordingly.
2450 2011-04-01  Gary Funck  <gary@intrepid.com>
2452         * c-decl.c (grokdeclarator): Fix formatting of
2453           code that sets UPC block size on scalars.
2455 2011-04-01  Gary Funck  <gary@intrepid.com>
2457         * c-decl.c (grokdeclarator): Revert use of white space
2458           to match the trunk (to rationalize diffs).
2459         * c-typeck.c (convert_for_assignment): Ditto.
2460         * tree-ssa.c (useless_type_conversion_p): Ditto.
2462 2011-03-23  Gary Funck  <gary@intrepid.com>
2464         * DEV-PHASE: bump to 4.7.0-1 to reflect recent creation of
2465           the GCC 4.6 release branch.
2467 2011-03-21  Gary Funck  <gary@intrepid.com>
2469         Merge trunk version 171202 into gupc branch.
2471 2011-03-20  Gary Funck  <gary@intrepid.com>
2473         * varasm.c: Call error() directly with a format specifier,
2474           rather than using sprintf() to format the message.
2475           This should make it easier to internationalize UPC's error messages.
2477 2011-03-20  Gary Funck  <gary@intrepid.com>
2479         * configure.ac: Fix the check for gnu ld when enabling
2480           UPC link script support.
2481           configure: Regenerate (also picks up changes from previous
2482           merge with trunk).
2484 2011-03-20  Gary Funck  <gary@intrepid.com>
2486         Move UPC start files, end files, and linker specs.
2487         into libupc.  This reduces the impact on common GCC
2488         configuration files, and ensures that these UPC-specific
2489         components are only built when the UPC language dialect is selected.
2491 gcc/
2492         * c-family/c.opt: Add -fupc-link switch, used to select UPC-specific
2493           linker specs. Fix typo in -fupc-debug message.
2495         * config/upc-conf.h, config/darwin.h: Move defines for
2496           UPC-related section begins/ends into libupc/config/default/
2497           upc-crt-config.h.
2499         * config/darwin.h(LINK_COMMAND_SPEC_A): Add call outs to
2500           UPC-related linker compiler specifications,
2501           accessed via %:include().
2503         * configure.ac, configure: Remove logic related to building
2504           upc-crtbegin/end. Remove config. tests for numa and cpu
2505           affinity (previously used by the 'upc' driver); these
2506           settings are now propagated by target-specific compiler
2507           specs. built by libupc.  Regenerate autoconf.
2509         * gcc.c (LINK_COMMAND_SPEC): Add call outs to UPC-related
2510           linker compiler specifications, accessed via %:include().
2511           Define 'upc_crtbegin_spec', 'upc_crtend_spec', and
2512           'link_upc_spec'.
2514         * Makefile.in: Remove definition of UPC_CRTSTUFF_CFLAGS.
2516         * config/linux.h, config/i386/darwin.h, config/i386/linux64.h,
2517           config/i386/linux.h, config/i386/t-darwin, config/i386/t-darwin64,
2518           config/ia64/linux.h, config/mips/t-iris,
2519           config/mips/iris6.h: Revert to trunk version 167307.
2521 libgcc/
2522         * configure, configure.ac, config.host, Makefile.in:
2523           Revert to trunk version 167307.
2525 2011-02-23  Gary Funck  <gary@intrepid.com>
2527         * c-decl.c (undeclared_variable): fix typo. Inadvertently
2528         removed negation on following 'if'.
2530 2011-02-22  Gary Funck  <gary@intrepid.com>
2532         * c-decl.c (undeclared_variable): call upc_diagnose_deprecated_stmt
2533         to check for the usage of certain deprecated UPC keywords.
2534         * c-family/stub-upc.c (upc_diagnose_deprecated_stmt): New.
2535         * c-tree.h (undeclared_variable): Define prototype.
2537 2011-02-12  Gary Funck  <gary@intrepid.com>
2539         * c-typeck.c: (build_c_cast, convert_for_assignment)
2540           Diagnose an attempt to convert from an integer to
2541           a pointer-to-shared as an error.  Also, fix various
2542           error messages so that they use the preferred term
2543           pointer-to-shared instead of "shared pointer".
2545 2011-02-07  Gary Funck  <gary@intrepid.com>
2547         * c-typeck.c: (convert_for_assignment)
2548           Fix typo. in error message.
2550 2011-01-23  Gary Funck  <gary@intrepid.com>
2552         * c-typeck.c: (c_build_qualified_type)
2553           derive UPC block size by calling upc_get_block_size(),
2554           to ensure that the element type of an array of an array
2555           is derived correctly.
2557 2010-12-29  Gary Funck  <gary@intrepid.com>
2559         Merge trunk version 168314 into gupc branch.
2561 2010-12-15  Gary Funck  <gary@intrepid.com>
2563         Merge trunk version 167307 into gupc branch.
2565 2010-10-19  Gary Funck  <gary@intrepid.com>
2567         * c-typeck.c: Fix typo in previous fix
2568           which led to a mis-compare for equal block sizes.
2570 2010-10-18  Gary Funck  <gary@intrepid.com>
2572         * c-typeck.c: Fix bug: Cast of (shared <type> * shared) not
2573           diagnosed as an error
2575           The conversion from any type (shared or not) to
2576           a shared type is likely either meaningless or an error.  This update
2577           makes any conversion to a shared type, an error.
2579 2010-10-18  Gary Funck  <gary@intrepid.com>
2581         * c-typeck.c: Fix bug: passing int to shared pointer arg.
2582           generates spurious warning
2584           Add a #define procedure that does the same thing as
2585           WARN_FOR_ASSIGNMENT but issues an error diagnostic instead.  Use
2586           this procedure to diagnose passing an integer value to a
2587           pointer-to-shared as an error.
2589 2010-10-18  Gary Funck  <gary@intrepid.com>
2591         * c-typeck.c: Fix bug: shared [] in prototype silently ignored when
2592           matching routine declaration.
2594           When checking for type compatibility, shared qualified types must
2595           have the same block factor.  This check was missing from
2596           comptypes_internal().  This update adds the check for blocking
2597           factor equality.
2599 2010-10-17  Gary Funck  <gary@intrepid.com>
2601         * dwarf2out.c: Fix GCC Bug 45870 - note: non-delegitimized UNSPEC 5
2602           found (-O1 -g)
2604           See: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45870#c6
2606 2010-10-17  Gary Funck  <gary@intrepid.com>
2608         * tree-cfg.c: Implement the fix for GCC Bugzilla Bug
2609           45869 - [4.5/4.6 Regression] type mismatch in shift expression
2610           produces ice with -O3 and -m32.
2612           See: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45869
2614 2010-10-17  Gary Funck  <gary@intrepid.com>
2616         * c-common.c: Diagnose the application of the various "*sizeof"
2617           operations on generic pointer-to-shared as a compilation error.
2619 2010-10-17  Gary Funck  <gary@intrepid.com>
2621         * c-decl.c: Fix a segfault/ICE that occurred when printing an error
2622           message regarding a function parameter being declared with a shared
2623           qualifier.
2625           The parameter's 'name' value is not defined at this point, and
2626           cannot be used in the error message.  This update removes the
2627           reference to 'name', and eliminates the segfault.
2629 2010-10-16  Gary Funck  <gary@intrepid.com>
2631         * Makefile.in: Implement fixes for SGI/IRIX/MIPS port.
2633           The gcc/Makefile.in rules for install-plugin had to be re-written to
2634           break up a long list of header files that exceeded the command line
2635           limitation imposed by Irix.
2637           Access functions for TFmode types had to be implemented.
2638           Apparently, this is the mode used for the SGI/MIPS port to represent
2639           "long float".
2641 2010-10-14  Gary Funck  <gary@intrepid.com>
2643         * c-decl.c: Fix bug: Multiple equal blocking factors specified
2644           via typedef chain should not be diagnosed as an error.
2646           If the block size that is given by the typedef is equal to the block
2647           size given explicitly in the variable declaration, then do not
2648           complain.  The easiest way to make this check was to create a
2649           temporary type that is a clone of the element type and then set its
2650           block size using the given layout qualifier.  Then compare the block
2651           size of the temporary (the declaration) to the block size specified
2652           in the typedef.  This complexity is needed, because the '[*]' block
2653           size needs to be calculated, and the '[]' needs to be mapped into a
2654           zero block size.
2656 2010-10-10  Gary Funck  <gary@intrepid.com>
2658         * c-decl.c: Fix bug: ICE: two or more layout qualifiers
2659           specified
2661           The compiler properly detected the presence of two or more layout
2662           qualifiers as an error, but then hit an assertion check, because the
2663           code that followed the error expected to see a qualifier and not a
2664           layout specifier.  The fix is simple: just return immediately after
2665           detecting the error.
2667 2010-10-10  Gary Funck  <gary@intrepid.com>
2669         * c-decl.c: Improve error diagnostics for various cases of UPC
2670           shared array type declarations.
2672           Add the check for this error: "In the dynamic translation
2673           environment, THREADS may not appear in declarations of shared arrays
2674           with indefinite block size".  Also, fix up a few of the other
2675           related error diagnostics.
2677 2010-10-09  Gary Funck  <gary@intrepid.com>
2679         * c-common.c: Fix bug: segfault on incomplete array definition.
2681           This turned out to be a bit complicated.   The logic in
2682           upc_lang_layout_decl had to be re-arranged to avoid trying to lookup
2683           the THREADS identifier in the case where the blocking factor has
2684           been set to indefinite ([]).  This can happen when indefinite array
2685           declarations are processed for shared arrays.  At that time, the
2686           file scope has been closed and THREADS is no longer in scope.  Some
2687           more work is needed on upc_lang_layout_decl().  It has some
2688           duplication, and notably duplicates the two branches of the if
2689           having to do with TYPE_SIZE and TYPE_SIZE_UNIT, that appear in the
2690           caller of this routine (layout_decl()).
2692           The method of forcing a layout qualifier of [] in the indefinite
2693           declaration handler is odd a well.  The code that just does the
2694           setting of the block factor, needs to moved into its own routine
2695           that doesn't depend upon a declspec for '[]' to be passed in, just
2696           in order to set the blocking factor to some value (in this case, 0).
2697           Also, the logic for how that shared type is constructed is strange.
2698           First the type with 0 blocking factor is set.  Then the shared
2699           qualifier is removed from the type, and then added back later.  The
2700           intermediate type has a blocking factor set, but it has no shared
2701           qualifier.  Fixing this will require some thought.  It is tempting
2702           just to make indefinite shared arrays an error, rather than forcing
2703           the dimension to be '1'.
2705           This likely fixes a serious error in the previous update to
2706           upc_lang_layout_decl(), where it didn't have the logic to set
2707           TYPE_SIZE_UNIT() in the main part of the 'if' statement.  This means
2708           the previous update would fail on many tests.
2710 2010-10-09  Gary Funck  <gary@intrepid.com>
2712         * varasm.c: Add an assertion check for the case that DECL_SIZE_UNIT
2713           (decl) is null, which can happen if some layout error occurred
2714           upstream.
2716 2010-10-09  Gary Funck  <gary@intrepid.com>
2718         * c-decl.c: Fix bug: file scope shared arrays mis-diagnosed as
2719           "variable-sized" when compiled in dynamic threads.
2721           This long-standing bug is easily fixed.  Just check
2722           for the situation that the non-constant sized type is shared and
2723           that it does not have a dimension that references a multiple of
2724           threads.  If this criteria is met, then issue a meaningful
2725           diagnostic.
2727 2010-10-01  Gary Funck  <gary@intrepid.com>
2729         * configure, configure.ac: Update manual page, and bug reporting
2730           URL.
2732           Update "man" page to reflect debugging switches.  Also, some general
2733           clean up.  Change the bug reporting URL to point to gccupc.org.
2735 2010-09-27  Gary Funck  <gary@intrepid.com>
2737         * c-parser.c, config/upc-conf.h: Issue a descriptive message when
2738           the UPC forall depth count variable is not found.
2740           The __upc_forall_depth variable should be defined in gcc-upc-lib.h.
2741           The compiler will generate code that references this variable in
2742           order to implement nested upc_forall semantics.  If there is a
2743           compiler build or install problem, this variable may not be found.
2744           In this case, terminate with an internal_error().
2746 2010-09-26  Gary Funck  <gary@intrepid.com>
2748         * c-parser.c: Fix Bug 240: upc_forall with empty clauses
2749           mis-diagnosed as syntax error.
2751           Fix a failure exhibited by the Berkeley test case,
2752           bug873a.upc, which has the code:
2753                double d;
2754                upc_forall (;;;d) {...} The compiler did not properly handle
2755           the empty "condition" clause, and did not recover well when it was
2756           determined that the use of a double value, "d" above, was neither a
2757           pointer-to-shared nor an integer expression.  The update implements a
2758           fix for both issues.
2760           See also: gcc/c-parser.c gcc/upc/upc-act.c
2762 2010-09-23  Gary Funck  <gary@intrepid.com>
2764         * c-decl.c: Fix Bug 29: Layout qualifier within a typedef is not
2765           incorporated into the referencing type.
2767           This was semi-fixed a few times before.  This update fixes a few
2768           more places where the layout qualifier wasn't being propagated
2769           through typedef's properly.  What made this a bit tricky is shown in
2770           the example cited in the bug report:
2772           typedef shared [5] int A_t; A_t A[5*THREADS];
2774           In the typedef, the blocksize is being applied to a shared *scalar*,
2775           and the code was applying the blocksize only to arrays.  This update
2776           handles shared scalars correctly.
2778 2010-09-22  Gary Funck  <gary@intrepid.com>
2780         * c-parser.c, c-tree.h, stub-upc.c: Fix Bug 403: Nested
2781           upc_forall() semantics are not implemented
2783           The checkforall test in the Berkeley harness test suite indicated
2784           that GCC/UPC was not properly implementing nested upc_forall
2785           semantics.  Nested upc_forall statements (both statically or
2786           dynamically nested) must implement their affinity clause as if it
2787           were "continue"; thus all steps in the loop must execute without
2788           regard for affinity.  To implement these semantics a global depth
2789           counter, __upc_forall_depth, is maintained by the generated code
2790           that implements upc_forall.
2792           See also: gcc/c-parser.c gcc/c-tree.h gcc/stub-upc.c
2793           gcc/upc/upc-act.c gcc/upc/upc-act.h libupc/include/gcc-upc-lib.in
2794           libupc/include/upc.h libupc/smp/upc_main.c
2796 2010-09-19  Gary Funck  <gary@intrepid.com>
2798         * c-decl.c: c-decl.c: zero out the layout specifier, after
2799           processing an array type.
2801           Fix the previous fix, that moved the setting of the type's layout
2802           qualifier to the outside of the array type processing loop.  What is
2803           missing from the fix is that the layout_qualifier variable needs to
2804           be cleared after setting the type's blocksize.
2806 2010-09-19  Gary Funck  <gary@intrepid.com>
2808         * config/upc-conf.h: Fix Bug 375: error message is off-by-one when
2809           given blocksize is greater than UPC_MAX_BLOCKSIZE.
2811           The value we were using for UPC_MAX_BLOCK_SIZE was one bigger than
2812           the actual maximum block size.  Therefore, the message was correct,
2813           but the underlying value that was being checked was wrong.  Change
2814           the values so that they agree with the actual implementation-defined
2815           limit.
2817 2010-09-11  Gary Funck  <gary@intrepid.com>
2819         * c-decl.c: Fix Bug 402: ICE: '[*]' layout factor on
2820           multi-dimensional shared array with dynamic threads.
2822           This declaration caused an internal compiler error when compiled
2823           with dynamic threads:
2824               shared [*] int A[THREADS][16]; The bug was discovered when
2825           compiling the RTED_UPC test suite.
2827           The fix is to process layout qualifiers after the entire array type
2828           has been built.  Otherwise, we try to calculate the blocksize on a
2829           shared array type that has not had its "size depends upon the value
2830           of THREADS" flag set.
2832           Also, added a test case.
2834           See also: libupc/testsuite/libupc.upc/intrepid/test18.upc
2836 2010-07-11  Gary Funck  <gary@intrepid.com>
2838         Fix a bug where a statement in c_build_qualified_type()
2839         in the trunk had been inadvertently deleted.
2840         This bug showed up in the IA64 port, because jmpbuf's
2841         on that architecture must be 16 byte aligned, and they were not.
2842         c-typeck.c (c_build_qualified_type): Revive the deleted line.
2844 2010-07-08  Gary Funck  <gary@intrepid.com>
2846         Make changes so that other language compilers
2847         will build and bootstrap.
2848         * c-family/c-common.c (compiling_upc, flag_upc,
2849         flag_upc_instrument, flag_upc_instrument_functions,
2850         use_upc_dwarf2_extensions): Move to stub-upc.c and
2851         upc-lang.c.
2852         * c-family/c-common.h (use_upc_dwarf2_extensions,
2853         compiling_upc): Add extern definitions - needed
2854         to compile/build other language front ends.
2855         * c-family/c.opt: Fix the spelling of ObjC.
2856         It had been incorrectly spelled as Objc.
2857         * c-family/c.opt: Add UPC for the various switches
2858         that are valid for both C and ObjC.
2859         * c-fmaily/c-opts.c: Add CL_UPC to the list of
2860         supported options switches when compiling assembly
2861         language.
2862         * lto/lto-lang.c (use_upc_dwarf2_extensions,
2863         flag_upc_instrument, flag_upc_instrument_functions):
2864         Remove these definitions.  They have been moved
2865         to c-family/stub-upc.c.
2866         * upc/ChangeLog: Move relevant entries
2867         to ChangeLog.upc.
2868         * c-family/stub-upc.c (compiling_upc, flag_upc,
2869         flag_upc_instrument, flag_upc_instrument_functions,
2870         use_upc_dwarf2_extensions): Moved from c-common.c
2871         * upc/upc-lang.c (compiling_upc, flag_upc,
2872         flag_upc_instrument, flag_upc_instrument_functions,
2873         use_upc_dwarf2_extensions): Moved from c-common.c
2874         * objc/objc-act.c (objc_gimplify_expr): Add additional
2875         parameters to c_gimplify_expr() call, that are used
2876         by upc's tree rewrites.
2877         * cp/cp-gimplify.c (cp_gimplify_expr): Likewise.
2878         * gcc/cp/lex.c (init_reswords): If not compiling
2879         UPC, then mask off the UPC keywords.
2880         * cp/Make-lang.in (C_STUB_OBJS): Use this
2881         make macro to link with c-family/stub-objc.o
2882         and c-family/stub-upc.o.
2883         * fortran/Make-lang.in (C_STUB_OBJS): Likewise.
2884         * java/Make-lang.in (C_STUB_OBJS): Likewise.
2885         * objc/Make-lang.in: Link with c-family/stub-upc.o
2886         to avoid undefined references.
2887         c-parser.c: Fix line indentation.
2888         * libcpp/include/cpplib.h: Remove CL_UPC from
2889         the list of language kinds accepted by the
2890         C preprocessor.  This is not necessary because
2891         UPC is a derivative of C99, and does not need
2892         a different language kind.
2893         * c-fmaily/c-opts.c (c_common_handle_option):
2894         Call set_std_c99() when processing the
2895         "--lang upc" switch, instead of setting the
2896         language kind to CL_UPC.
2897         * libupc/testsuite/libupc.upc/intrepid/ChangeLog: New.
2899 2010-07-03  Gary Funck  <gary@intrepid.com>
2901         Merge trunk version 161517 into gupc branch.
2902         * gcc/stub-upc.c: Move to gcc/c-family/.
2903         * libupc/testsuite/libupc.upc/intrepid/test19.upc:
2904         Add 'unused' attributes to avoid "set, but
2905         not referenced" warnings.
2906         * libupc/testsuite/libupc.upc/intrepid/test18.upc:
2907         Likewise.
2909 2010-03-01 Gary Funck  <gary@intrepid.com>
2911         Create gupc branch from trunk version 157149.