[PATCH] [FastISel][X86] Assign the correct register class to folded operations

Keno Fischer kfischer at college.harvard.edu
Thu Nov 13 22:01:10 PST 2014


Hi ributzka,

Without this patch, running the given test case using
`llc -fast-isel -verify-machineinstrs -O3` fails with

*** Bad machine code: Illegal virtual register for instruction ***
- function:    julia_ht_keyindex219890
- basic block: BB#3 idxend (0x215ba40)
- instruction: CMP8mr %vreg8, 1, %vreg7, 0, %noreg, %vreg6, %EFLAGS<imp-def>; mem:LD1[%0] GR64:%vreg8,%vreg7 GR8:%vreg6
- operand 2:   %vreg7
Expected a GR64_NOSP register, but got a GR64 register

http://reviews.llvm.org/D6262

Files:
  lib/Target/X86/X86FastISel.cpp
  test/CodeGen/X86/fast-isel-regclass.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D6262.16197.patch
Type: text/x-patch
Size: 1911 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20141114/90b654ad/attachment.bin>


More information about the llvm-commits mailing list