| Rev |
Log message |
Author |
Age |
Path |
| 3938 |
Fix for Bug#978. Fixed the problem in interchanging memory and add operations in 64 bit mode. CR by Sun Chan |
shivaram |
346d 21h |
/ |
| 3937 |
Change return type of a function having no return value to void |
meiye |
347d 17h |
/ |
| 3936 |
Revert previous open64 merge and change inline functions
This reverts the open64 merge r3774:3875, since it wasn't stable.
Also, changing some inline functions back to macros. The inline functions
caused the coarray lowering phase to crash when not building a debug compiler. |
dreachem |
350d 22h |
/ |
| 3935 |
adding missing files for previous open64 merge |
dreachem |
351d 02h |
/ |
| 3934 |
open64 merge r3774:3875
Adds many fixes and improvements made for Open64 5.0 release to OpenUH.
Features include:
enabling of Nystrom alias analyzer for IPA phase
the siloed reference analysis to IPA phase,
x86-ppc32 cross compiler support,
CGSSA implementation.
Other enhancements include improve build where the default target architecture is
detected, and support for variable length arrays in structs. This commit
purposely does not include -r3876 from open64 main trunk, because OpenUH has
existing dependencies on PROMPF feature and that commit attempts to eliminate
PROMPF completely.
See the open64 (main trunk) commit log for more details. |
dreachem |
351d 02h |
/ |
| 3933 |
[CAF] fix for handling statements with remote access on both sides
This fixes handling of statements where there is a coindexed reference on both
the LHS and RHS, of the form:
A(...)[p] = B(...)[q] |
dreachem |
351d 03h |
/ |
| 3932 |
[CAF] Improvements for strided accesses + more
This commit adds several improvements to the handling of strided coarray
accesses. Currently handled accesses fall into 3 categories:
(1) non-strided (or contiguous data) accesses
e.g. a(1:10) = b( 1:10, 5)[p]
b(1:10)[p] = a(1:10, 2)
(2) simple strided accesses (subscripts are not strided)
e.g. a(1:3, 1:5) = b(1:3, 6:10)[p]
b(2, 1:5)[p] = a(1:5)
(3) strided accesses with strided subscripts
e.g. a(5, 1:4) = b(1:8:2)[p]
b(1:10:2,1:4:2)[p] = a(1:5, 4:7:2)
It should now handle more general strided transfers without requiring the
extra LCB copy. Also, subscript extents need not match, so long as the array
shapes of the left and right sides are conforming. These are all accepted and
translated without needing to introduce an intermediate LCB buffer.
b(1:10, 5) = a(1, 1:10)[2]
b(1, 2, 1:10:2) = a(1:5, 3)[2]
b(1:10:2, 1, 1:4) = a(1:5, 1:8;2, 1)[2]
Improvements are listed:
* runtime checks for contiguous accesses
* will convert strided access to contiguous access if the remote side is
contiguous while the local side is strided.
* compiler configure checks that gasnet-root path is valid
* compiler options can be specified for uhcaf just as with uhf90 (i.e. no need
to specify these options after -- )
* added --show-info option to uhcaf to get more informatoin about the default
compiler flags and the libraries linked in.
Contributor: Deepak |
dreachem |
351d 07h |
/ |
| 3931 |
[CAF] new coarray prelowering phase + misc fixes
This commit reorganizes the coarray prelowering phase in the back-end. It also
adds a number of fixes to the CAF implementation.
Prelowering has been split into 2 distinct phases. The first phase will
identify places in which an intermediate communication buffer should be
introduced to hold data to write out to read into and generate assignment
statements for this. The second phase will traverse the tree and replace
coindexed references with GET/PUT runtime calls.
Additionally, ths following fixes/enhancements are added:
* adding reduction routines for 1d arrays in libcaf-extra
* distinguish scalar from 1D arrays in libcaf-extra broadcast routines
* fixed link order for MPI libs in uhcaf script
* setting the num_codim field of the dope vector associated with coarray dummy
variables
(patch level now at 3.0.6)
Contributor: Deepak |
dreachem |
351d 07h |
/ |
| 3930 |
Split SC_NODE out from opt_proactive.cxx into opt_sc.cxx. CR: Jian-xin Lai |
meiye |
352d 10h |
/ |
| 3929 |
Re-implement some data structures using std lib. CR: Jian-xin Lai |
meiye |
352d 11h |
/ |
| 3928 |
Cosmetic changes to add trace/dump/assert and use better names, CR: Jian-xin Lai |
meiye |
352d 11h |
/ |
| 3927 |
Do miscellaneous transformations to enable loop fusion, if-merging, loop interchange and if-condition precomputation. CR: Jian-xin Lai |
meiye |
352d 11h |
/ |
| 3926 |
fix for bug962.
function symbols should be allowed as "i" constraint,
since they are link time constants.
Code Review: Lai Jian-Xin. |
yug |
374d 01h |
/ |
| 3925 |
Fix bug 779: build in source directory does not work.
In the osprey-gcc-4.2.0 build always use a known subdirectory for
$(host_subdir) instead of making the choice depending on where configure
was run, so that we always know where to find the build artifacts.
Also in the osprey-gcc 4.2.0 build use a path relative to $(build_objdir)
to find libgspin42.a.
In the build of the cygnus/ld subdirectory, use the "new-ld" target
instead of "all". The "all" target causes unwanted modifications to
checked-in files when the build is being done in the source directory.
For Open64, we only need the new-ld (ipa_link) executable.
Approved by: Sun Chan and Mike Murphy |
dcoakley |
376d 03h |
/ |
| 3924 |
Fix for bug 972. movlhps and movhlps opcode properties are corrected.
Code Review by Sun Chan |
shivaram |
379d 22h |
/ |
| 3923 |
Fix Bug 973 - Abstract_origin is error when do DST_mk_cross_inlined_subroutine
C.R. by Mr Sun chan |
shenruifen |
381d 06h |
/ |
| 3922 |
Fix for bug971. "pandn" opcode is removed from commutative group.
Code Review: Sun Chan |
shivaram |
382d 07h |
/ |
| 3921 |
add bug963 case |
yug |
386d 02h |
/ |
| 3920 |
add bug967 case |
yug |
386d 02h |
/ |
| 3919 |
fix for bug963.
try copy propogation into variables inside ASM_INPUT. if the copy
source is a constant and the required constrait is "i".
Code Review: Lai Jian-Xin. |
yug |
386d 02h |
/ |