Refactor to use D instead of Assembler::Directives