I doubt that this would be a good idea. I’ve already tried this with other applications, and it’s surprisingly slow and limited.
I noticed that anisotropic filtering could be used when sampling depth textures for shadow mapping with GL_COMPARE_REF_TO_TEXTURE, which caused it to do up to 16 bilinear depth tests (which totals 64 taps) in a line. Even with just a small amount of anisotropic filtering, it seems like textureGrad() is much slower than texture() when doing texture lookups (~4-5 textureGrad()s are slower than 16 texture()), so for PCF I scrapped the idea.
On the other hand, I do use anisotropic filtering for particle motion blur. I modify the gradients using textureGrad() and do a single texture lookup for each pixel. Since particles use texture filtering and mipmaps, this looks decent and automatically clamps the maximum blur kernel size to the amount of anisotropic filtering enabled, but it has some limitations. The biggest one is the limited precision of the anisotropic filtering direction. It seems like the anisotropic filtering only works for a limited number of angles, my guess is 32 or 64 discrete angles. For particles, this works pretty well, but I would not want to use it for motion blur, as this could cause weird seams in the blur.
For the main algorithm, I can’t use any filtering at all as that would blur over depth discontinuities. For the optimized blur, I also don’t want to mix in the center sample (I want to use my anti-aliased center sample), so bilinear filtering is kind of a bad there too.