Backpatching is a process used when the code being compiled contains a symbolic label that is not yet defined and does this in only one pass in contrast to the hack assembler. It is necessary or desirable to avoid a second pass over the source program the external storage for the intermediate file between two passes is slow or inconvenient to use and in theory, the only advantage is Speed simply because one pass is faster than two passes.
Read this article for more: Hack Assembler is a two-pass assembler