I'd say D is just fine. Even with many mons being weak to rock, you're still working with absolutely horrid 45/45 offensive stats. All 3 of the starters hit harder than that - in their base forms.To be honest, I did notice that a lot of the stuff in the game is weak to rock. Or at least, it seemed that there was an abundance of flying pokemon. I think that one of the things that works against Nosepass is that you get rock tomb very early on, followed by rock slide a bit later, then stone edge late game. There's a wide range of pokemon that can learn these moves as coverage that don't have the abundant weaknesses that rock pokemon do (like A-Muk). Though I don't think C tier is the right place for it, I think D tier might fit it better than E.
Added to that, it... really isn't that beefy. Like, at all. 135/90 is great, but it's got only 30 HP. Coupled with the "my moves might as well have -1 priority" speed tier, this means it will be worn down rather quickly.
I agree that Rockruff is the better choice between the two, but dang, that attack stat on Gigalith demands some respect. It's also overall more bulky than Nosepass while still allowing you access to the rock Z moveYeah, you can also catch Rockruff, who is probably a better option too, especially if you're using sun and not moon.