Принципы выбора защищаемых функций

В документации сказано:

Кроме того, нужно:
1. Защищать функции, содержащие интеллектуальную собственность
2. Защищать функции, изменившиеся в данном релизе
3. Не защищать стандартные библиотечные функции, прилинкованные статически
4. Не защищать «медленные» базовые блоки в функциях, отмеченных символом улитки

Правильно ли я понимаю, что 1й пункт означает, что должны быть защищены все функции, в которых я использую вызовы Guardant API?

Правильно ли я понимаю, что 3й пункт означает, что нужно сбросить все предложенные профайлером функции, которые находятся в C0W32.obj CP32MT.obj RTL.bpi SysInit.obj VCLE.obj b и т.д., вообщем, все, что написано не мною лично? (Собрано в Embarcadero C++Builder 2010)

Re: Принципы выбора защищаемых функций

В общем то это не жесткие правила, а рекомендации. Защищать интеллектуальную собственность предлагается прежде всего вашу. Конечно, защитить функции содержащие вызовы Guardant API - это хорошая идея, но всегда надо подбирать баланс между скоростью и защищенностью.

По 3-ему пункту - тут всего лишь имеется в виду, что защищать стандартные библиотечные функции почти бесполезно. Если при их защите вы не наблюдаете проблем с производительностью программы, то можно функции не сбрасывать.