summaryrefslogtreecommitdiffstats
path: root/clang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorJakob Stoklund Olesen <stoklund@2pi.dk>2012-01-24 23:28:42 +0000
committerJakob Stoklund Olesen <stoklund@2pi.dk>2012-01-24 23:28:42 +0000
commit1b8e437ab63e1487dfef32e9dbd1b3b10496c80f (patch)
treeb04c3a72072e9dc74406ba65ef47c998fd1c21df /clang/lib/Frontend/CompilerInvocation.cpp
parent66ef9ad33f5f6234152454de40d1fb9ee8efe206 (diff)
downloadbcm5719-llvm-1b8e437ab63e1487dfef32e9dbd1b3b10496c80f.tar.gz
bcm5719-llvm-1b8e437ab63e1487dfef32e9dbd1b3b10496c80f.zip
Set correct <def,undef> flags when lowering REG_SEQUENCE.
A REG_SEQUENCE instruction is lowered into a sequence of partial defs: %vreg7:ssub_0<def,undef> = COPY %vreg20:ssub_0 %vreg7:ssub_1<def> = COPY %vreg2 %vreg7:ssub_2<def> = COPY %vreg2 %vreg7:ssub_3<def> = COPY %vreg2 The first def needs an <undef> flag to indicate it is the beginning of the live range, while the other defs are read-modify-write. Previously, we depended on LiveIntervalAnalysis to notice and fix the missing <def,undef>, but that solution was never robust, it was causing problems with ProcessImplicitDefs and the lowering of chained REG_SEQUENCE instructions. This fixes PR11841. llvm-svn: 148879
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud