Обратите внимание, что большинство операционных систем не всегда хранят весь код в памяти.Поскольку код является постоянными данными, ОС всегда может загрузить его из файла по требованию, как если бы он загружал динамические данные из свопинга.Но это не значит, что неиспользуемый код никогда не загружается, поскольку ОС загружает его не отдельными методами, а страницами.Другими словами, очень трудно предсказать, какие части вашего сегмента кода на самом деле окажутся в памяти, если вы не обладаете очень глубокими знаниями своей ОС и структуры своего сегмента кода.Единственное, что можно сказать наверняка, - это то, что ваш код может потреблять меньше физической памяти, чем его фактический размер.
Что касается скорости выполнения, ответ, я думаю, нет.Это может увеличить скорость загрузки приложения, но когда код выполняется, никого не волнует, насколько он велик, и это абсолютно не влияет на скорость.То есть, если вы не достигли своего предела памяти, а ОС начинает много менять местами, и все становится очень медленным.
Как уже упоминали другие, компилятор может оптимизировать ваш код.Но это также то, что вы можете сделать сами, используя #ifdefs для своих методов отладки, и обычно это рекомендуется делать.