Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(793)

Side by Side Diff: lib/Target/R600/AMDGPUInstructions.td

Issue 183273009: Prep for merging 3.4: Undo changes from 3.3 branch (Closed) Base URL: http://git.chromium.org/native_client/pnacl-llvm.git@master
Patch Set: Retry Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « lib/Target/PowerPC/PPCInstrInfo.cpp ('k') | lib/Target/R600/AMDGPUTargetMachine.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 //===-- AMDGPUInstructions.td - Common instruction defs ---*- tablegen -*-===// 1 //===-- AMDGPUInstructions.td - Common instruction defs ---*- tablegen -*-===//
2 // 2 //
3 // The LLVM Compiler Infrastructure 3 // The LLVM Compiler Infrastructure
4 // 4 //
5 // This file is distributed under the University of Illinois Open Source 5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details. 6 // License. See LICENSE.TXT for details.
7 // 7 //
8 //===----------------------------------------------------------------------===// 8 //===----------------------------------------------------------------------===//
9 // 9 //
10 // This file contains instruction defs that are common to all hw codegen 10 // This file contains instruction defs that are common to all hw codegen
(...skipping 266 matching lines...) Expand 10 before | Expand all | Expand 10 after
277 } 277 }
278 278
279 // SHA-256 Ma patterns 279 // SHA-256 Ma patterns
280 280
281 // ((x & z) | (y & (x | z))) -> BFI_INT (XOR x, y), z, y 281 // ((x & z) | (y & (x | z))) -> BFI_INT (XOR x, y), z, y
282 class SHA256MaPattern <Instruction BFI_INT, Instruction XOR> : Pat < 282 class SHA256MaPattern <Instruction BFI_INT, Instruction XOR> : Pat <
283 (or (and i32:$x, i32:$z), (and i32:$y, (or i32:$x, i32:$z))), 283 (or (and i32:$x, i32:$z), (and i32:$y, (or i32:$x, i32:$z))),
284 (BFI_INT (XOR i32:$x, i32:$y), i32:$z, i32:$y) 284 (BFI_INT (XOR i32:$x, i32:$y), i32:$z, i32:$y)
285 >; 285 >;
286 286
287 // Bitfield extract patterns
288
289 def legalshift32 : ImmLeaf <i32, [{return Imm >=0 && Imm < 32;}]>;
290 def bfemask : PatLeaf <(imm), [{return isMask_32(N->getZExtValue());}],
291 SDNodeXForm<imm, [{ return CurDAG->getTargetConstant (CountTrailingOnes_32(N->getZExtValue()), MVT::i32);}]>>;
292
293 class BFEPattern <Instruction BFE> : Pat <
294 (and (srl i32:$x, legalshift32:$y), bfemask:$z),
295 (BFE $x, $y, $z)
296 >;
297
298 include "R600Instructions.td" 287 include "R600Instructions.td"
299 288
300 include "SIInstrInfo.td" 289 include "SIInstrInfo.td"
301 290
OLDNEW
« no previous file with comments | « lib/Target/PowerPC/PPCInstrInfo.cpp ('k') | lib/Target/R600/AMDGPUTargetMachine.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698