Heat a small skillet over medium heat; cook and stir pine nuts in the hot skillet until fragrant and toasted, about 5 minutes.
Blend basil, Parmesan cheese, toasted pine nuts, and garlic in a blender until a thick paste forms. Gradually stream olive oil into blender and continue blending until desired consistency of pesto is reached; season with salt and pepper.
Preheat an outdoor grill for medium-high heat and lightly oil the grate. Season both sides of salmon with salt and pepper.
Place salmon, skin-side down, onto grill grates; close grill and cook until salmon is about 2/3 done, 8 to 15 minutes. Remove salmon from grill using a spatula and transfer to a baking sheet, skin-side down. Spread pesto evenly over the salmon. Save extra pesto for another use if there are leftovers.
Set oven rack about 6 inches from the heat source and preheat the oven's broiler.
Broil salmon until fish flakes easily with a fork and pesto is bubbling, about 5 minutes.