Problem regarding AsmPrinter registration

I am trying to add a small new backend for LLVM. For assembly
printing, I have derived a class from AsmTarget,

  struct LLVM_LIBRARY_VISIBILITY Asd_ARMAsmPrinter : public AsmPrinter

After creating all the bits and pieces, I was trying to use this to
print the assembly for a sample program. Though I was getting weird
errors. I tried looking for the problem and found that the my target
AsmPrinter is not being registered properly. This conclusion was
derived from following observation.

I have configured LLVM with only two targets- X86 and ASD (my target)
When I checked for targets build/include/llvm/Config/Targets.def, I
see my target details.

# error Please define the macro LLVM_TARGET(TargetName)

But when I check for the ASMPrinter for my target in
build/include/llvm/Config/AsmPrinters.def, I see only X86

  # error Please define the macro LLVM_ASM_PRINTER(TargetName)

Can some point to some text about how these *.def files are created
and what may be the reason for my printer not getting registered. I
was having another problem related to ASM printer which I discussed in
post "Problem regarding llc command line option" which seem to be a
related problem.

Thanks and Regards,
Please help