CAKE: Preheat oven to 350 degrees. Mix buttermilk with baking soda, let stand 10 minutes. In a large mixing bowl, cream sugar, butter and shortening until smooth. Add egg yolks, one at a time, beating well after each one. Sift together flour and salt. Add flour alternately with buttermilk to butter mixture. Stir in vanilla, coconut and pecans. Beat egg whites until stiff, gently fold into batter. Pour into 3 greased and floured 9 inch cake pans. Bake for 30 minutes or until cake springs back when touched in the center. Cool completely. Frost with cream cheese frosting
CREAM CHEESE FROSTING: With an electric or stand mixer, beat together cream cheese and butter until smooth. On low speed add vanilla, salt and confectioners' sugar 1 cup at a time. Turn mixer on high and beat until light and fluffy. Spread frosting between layers, on sides and over top of cake.