Answer
Check three things for the functions that don't show up: that the Module_ and Lu_Name_ variables are actually declared with real values in the package spec (not left blank or omitted), that the Dictionary Cache has been refreshed since the package was compiled, and that the IFSSYS role/user has been granted EXECUTE on the package. Any one of these being missing can cause a package's functions to only partially (or inconsistently) appear as grantable in the permission set's Database Objects tab.