diff options
author | Bruno Cardoso Lopes <bruno.cardoso@gmail.com> | 2010-06-23 19:50:39 +0000 |
---|---|---|
committer | Bruno Cardoso Lopes <bruno.cardoso@gmail.com> | 2010-06-23 19:50:39 +0000 |
commit | 81cd7ffe45730d5afd383ee8850e3ff1f48a1920 (patch) | |
tree | 47bfbee3a5e9ab27a2713118b796140a97c635fe /utils | |
parent | 9b0d0a42a6772c12bb1c8362aefa6ed50df92290 (diff) | |
download | llvm-81cd7ffe45730d5afd383ee8850e3ff1f48a1920.tar.gz llvm-81cd7ffe45730d5afd383ee8850e3ff1f48a1920.tar.bz2 llvm-81cd7ffe45730d5afd383ee8850e3ff1f48a1920.tar.xz |
Fix a tblgen bug.
Given the pattern below as an example:
list<dag> Pattern = [(set RC:$dst, (v4f32 (shufp:src3 RC:$src1,
(mem_frag addr:$src2))))];
The right reference resolving should lead to:
list<dag> Pattern = [(set VR128:$dst, (v4f32 (shufp:src3 VR128:$src1,
(mem_frag addr:$src2))))];
But was yielding:
list<dag> Pattern = [(set VR128:$dst, (v4f32 (shufp VR128:$src1,
(mem_frag addr:$src2))))];
Fix this by passing the right name when creating a new DagInit node.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106670 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils')
-rw-r--r-- | utils/TableGen/Record.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/utils/TableGen/Record.cpp b/utils/TableGen/Record.cpp index 5a69edb615..d2cf379907 100644 --- a/utils/TableGen/Record.cpp +++ b/utils/TableGen/Record.cpp @@ -1262,7 +1262,7 @@ Init *DagInit::resolveReferences(Record &R, const RecordVal *RV) { Init *Op = Val->resolveReferences(R, RV); if (Args != NewArgs || Op != Val) - return new DagInit(Op, "", NewArgs, ArgNames); + return new DagInit(Op, ValName, NewArgs, ArgNames); return this; } |