Linker relaxation may change code size. We need to fix up the alignment of alignment directive in text section by inserting Nops and R_RISCV_ALIGN relocation type. So then linker could satisfy the alignment by removing Nops.
To do this:
1. Add NopBytesToInsertForAlignDirectiveInCodeSection target hook to calculate the Nops we need to insert.
2. Add insertFixupForAlignDirectiveInCodeSection target hook to insert R_RISCV_ALIGN fixup type.