-ffunction-sections -fdata-sections are used to compile sources to support GCing unused functions/data.