Evan,

I don't know anything about this stuff, but looking at the pattern, it
seems a mistake may have been made?  Consider these:

On Wed, 2006-01-25 at 20:27 -0600, Evan Cheng wrote:
>  void X86ATTAsmPrinter::printMachineInstruction(const MachineInstr *MI) {
>    ++EmittedInsts;
> +  // This works around some Darwin assembler bugs.
> +  if (forDarwin) {
> +    switch (MI->getOpcode()) {
> +    case X86::REP_MOVSB:
> +      O << "rep/movsb (%esi),(%edi)\n";
> +      return;

REP_MOVSB = rep/movsb

> +    case X86::REP_MOVSD:
> +      O << "rep/movsl (%esi),(%edi)\n";
> +      return;

REP_MOVSD != rep/movsl

is this a mistake?

> +    case X86::REP_MOVSW:
> +      O << "rep/movsw (%esi),(%edi)\n";
> +      return;
> +    case X86::REP_STOSB:
> +      O << "rep/stosb\n";
> +      return;
> +    case X86::REP_STOSD:
> +      O << "rep/stosl\n";
> +      return;

and this one?

> +    case X86::REP_STOSW:
> +      O << "rep/stosw\n";
> +      return;
> +    default:
> +      break;
> +    }
> +  }

Reid.

Attachment: signature.asc
Description: This is a digitally signed message part

_______________________________________________
llvm-commits mailing list
llvm-commits@cs.uiuc.edu
http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits

Reply via email to