{"action":"created","issue":{"url":"https://api.github.com/repos/hfp/libxsmm/issues/3","labels_url":"https://api.github.com/repos/hfp/libxsmm/issues/3/labels{/name}","comments_url":"https://api.github.com/repos/hfp/libxsmm/issues/3/comments","events_url":"https://api.github.com/repos/hfp/libxsmm/issues/3/events","html_url":"https://github.com/hfp/libxsmm/issues/3","id":109785315,"number":3,"title":"fortran module breaks under `-r8` or `-fdefault-real-8`","user":{"login":"maxhutch","id":1538980,"avatar_url":"https://avatars.githubusercontent.com/u/1538980?v=3","gravatar_id":"","url":"https://api.github.com/users/maxhutch","html_url":"https://github.com/maxhutch","followers_url":"https://api.github.com/users/maxhutch/followers","following_url":"https://api.github.com/users/maxhutch/following{/other_user}","gists_url":"https://api.github.com/users/maxhutch/gists{/gist_id}","starred_url":"https://api.github.com/users/maxhutch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/maxhutch/subscriptions","organizations_url":"https://api.github.com/users/maxhutch/orgs","repos_url":"https://api.github.com/users/maxhutch/repos","events_url":"https://api.github.com/users/maxhutch/events{/privacy}","received_events_url":"https://api.github.com/users/maxhutch/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"hfp","id":6748085,"avatar_url":"https://avatars.githubusercontent.com/u/6748085?v=3","gravatar_id":"","url":"https://api.github.com/users/hfp","html_url":"https://github.com/hfp","followers_url":"https://api.github.com/users/hfp/followers","following_url":"https://api.github.com/users/hfp/following{/other_user}","gists_url":"https://api.github.com/users/hfp/gists{/gist_id}","starred_url":"https://api.github.com/users/hfp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hfp/subscriptions","organizations_url":"https://api.github.com/users/hfp/orgs","repos_url":"https://api.github.com/users/hfp/repos","events_url":"https://api.github.com/users/hfp/events{/privacy}","received_events_url":"https://api.github.com/users/hfp/received_events","type":"User","site_admin":false},"milestone":null,"comments":9,"created_at":"2015-10-05T12:26:37Z","updated_at":"2015-11-09T15:35:39Z","closed_at":null,"body":"ifort's `-r8` and gfortran's `-fdefault-real-8` cause LIBXSMM_SINGLE_PRECISION and LIBXSMM_DOUBLE_PRECISION to be the same, causing double implementations of all the calls that differ only in precision.  I can think of a few solutions:\r\n  1. Don't change anything; codes shouldn't be using `-r8` anyways.\r\n  1. Define LIBXSMM_SINGLE_PRECISION using `selected_real_kind`\r\n  1. Define LIBXSMM_SINGLE_PRECISION as `4`\r\nIf BLAS had a true interface, then I'd go with (1), but seeing as LIBXSMM_SINGLE_PRECISION being defined as anything other than `4` would break the underlying SGEMM call, I think (2) and (3) are more flexible for right now.  The difference there should be mostly aesthetic.  Thoughts?"},"comment":{"url":"https://api.github.com/repos/hfp/libxsmm/issues/comments/155097978","html_url":"https://github.com/hfp/libxsmm/issues/3#issuecomment-155097978","issue_url":"https://api.github.com/repos/hfp/libxsmm/issues/3","id":155097978,"user":{"login":"hfp","id":6748085,"avatar_url":"https://avatars.githubusercontent.com/u/6748085?v=3","gravatar_id":"","url":"https://api.github.com/users/hfp","html_url":"https://github.com/hfp","followers_url":"https://api.github.com/users/hfp/followers","following_url":"https://api.github.com/users/hfp/following{/other_user}","gists_url":"https://api.github.com/users/hfp/gists{/gist_id}","starred_url":"https://api.github.com/users/hfp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hfp/subscriptions","organizations_url":"https://api.github.com/users/hfp/orgs","repos_url":"https://api.github.com/users/hfp/repos","events_url":"https://api.github.com/users/hfp/events{/privacy}","received_events_url":"https://api.github.com/users/hfp/received_events","type":"User","site_admin":false},"created_at":"2015-11-09T15:35:39Z","updated_at":"2015-11-09T15:35:39Z","body":"Let's adopt proven code: https://github.com/cp2k/cp2k/blob/intel/cp2k/src/base/kinds.F#L31"}}