New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pull 2019-02-06T16-42 Recent NVIDIA Changes #666

Merged
merged 3 commits into from Feb 7, 2019

Conversation

Projects
None yet
3 participants
@gklimowicz
Copy link
Contributor

gklimowicz commented Feb 7, 2019

No description provided.

gklimowicz added some commits Feb 6, 2019

Fix issue with VALUE attribute and BIND(C) routine
Passing by reference was used instead of passing by value.
Add scalar and vector complex EXP function for X86
Implement the complex exp function for both single and
double precision. The X86 processor targets supported are:
          AVX2
          AVX512
          AVX512KNL

Both scalar and vector versions are supported. Also updated the
intrinsic dispatch table to make use of these new functions.
New optimized LOG10 function.
This check-in adds support for the following:

          *) Single/Double Precision log10 intrinsic function
          *) x86_64 Processor Targets:   AVX2, AVX512, KNL
          *) Enables support for Linux, OSX, Windows, and Flang
print_status_flags(buffer);
strncat(buffer, ": ", 2);
// print variable name
snprintf(tmp, 14+1, "%14s:", varname);

This comment has been minimized.

@sscalpone

sscalpone Feb 7, 2019

Contributor

bug? 14 + ':' + null =16

This comment has been minimized.

@gklimowicz

gklimowicz Feb 7, 2019

Author Contributor

yes; I will resolve in upcoming PR.

snprintf(buffer1, 150, "%s: %08X == %-20g == %-25a == %d", buffer, uval, dval, fval, uval);
}
break;
default:

This comment has been minimized.

@sscalpone

sscalpone Feb 7, 2019

Contributor

Is this flang formatted?

This comment has been minimized.

@gklimowicz

gklimowicz Feb 7, 2019

Author Contributor

I'll make sure that it is when I fix the above issue.

@sscalpone sscalpone merged commit 2b336eb into flang-compiler:master Feb 7, 2019

@sscalpone sscalpone deleted the ThePortlandGroup:nv_stage branch Feb 7, 2019

@pawosm-arm

This comment has been minimized.

Copy link
Contributor

pawosm-arm commented on 604bad4 Feb 7, 2019

I've cherry-picked this one and the bug with VALUE attributed parameter still occurs. Following code:

module my_c_ptr

  use, intrinsic :: ISO_C_BINDING
   implicit none

contains

  function my_function(i) result(ptr) bind(C)
     integer(C_INT), value, intent(in) :: i
     type(C_PTR) :: ptr
     ptr = C_NULL_PTR
  end function
end module

...causes following ICE:

/tmp/ptr_bug_lite-25d9df.ll:28: error: value doesn't match function result type 'i64'
        ret i8* %5

1 error generated.

Removal of 'VALUE' makes this code able to be compiled.

This comment has been minimized.

Copy link
Contributor Author

gklimowicz replied Feb 7, 2019

This appears to be a separate issue, which we will put in the queue to look at.

This comment has been minimized.

Copy link
Contributor

pawosm-arm replied Feb 9, 2019

A new ticket opened, #669.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment