I know some works have been done in the context of cirrcuit privacy on homomorphic encryption, where from an output ciphertext it does not allow someone to distinguish what function is computed.
I wonder the need of this functionality. If we use a cloud server to delegate some tasks over encrypted data, then the cloud can know what kinds of function is being evaluated (possibly from binary code or cpu behavior).
And, if some specific company delegates task to the cloud server. Then the server can infer what's going on and what types of data is being processed.
In this case, circuit privacy does not make sense for me.