The code for the parts of the shaders relevant to your issue should be accessible in the doc bundled with Painter, from the Help->Shader Documentation... menu. You can also find the full glsl files for the fragment shader in Substance Designer, in <SD install directory>/resources/view3d/shaders/ (the parts relevant to your problem shoud be in physically_metallic_roughness/fs.glsl and common/pbr_ibl.glsl). The implementation of the BRDF is the same in both products.
We take the linear roughness value directly from the texture, and use "alpha is roughness squared". We never used Burley's 2012 remapping.