regop.isa (4725:441c280b5936) | regop.isa (4728:d60b98171bef) |
---|---|
1// Copyright (c) 2007 The Hewlett-Packard Development Company 2// All rights reserved. 3// 4// Redistribution and use of this software in source and binary forms, 5// with or without modification, are permitted provided that the 6// following conditions are met: 7// 8// The software must be used only for Non-Commercial Use which means any --- 369 unchanged lines hidden (view full) --- 378 microopClasses[name + 'i'] = RegOpChildImm 379 380 setUpMicroRegOp(name + "i", Name + "Imm", "X86ISA::RegOpImm", immCode); 381 setUpMicroRegOp(name + "i", Name + "ImmFlags", "X86ISA::RegOpImm", immCode, 382 flagCode = immFlagCode, condCheck = condCode, elseCode = elseCode); 383 384 defineMicroRegOp('Add', 'DestReg = merge(DestReg, SrcReg1 + op2, dataSize)') 385 defineMicroRegOp('Or', 'DestReg = merge(DestReg, SrcReg1 | op2, dataSize)') | 1// Copyright (c) 2007 The Hewlett-Packard Development Company 2// All rights reserved. 3// 4// Redistribution and use of this software in source and binary forms, 5// with or without modification, are permitted provided that the 6// following conditions are met: 7// 8// The software must be used only for Non-Commercial Use which means any --- 369 unchanged lines hidden (view full) --- 378 microopClasses[name + 'i'] = RegOpChildImm 379 380 setUpMicroRegOp(name + "i", Name + "Imm", "X86ISA::RegOpImm", immCode); 381 setUpMicroRegOp(name + "i", Name + "ImmFlags", "X86ISA::RegOpImm", immCode, 382 flagCode = immFlagCode, condCheck = condCode, elseCode = elseCode); 383 384 defineMicroRegOp('Add', 'DestReg = merge(DestReg, SrcReg1 + op2, dataSize)') 385 defineMicroRegOp('Or', 'DestReg = merge(DestReg, SrcReg1 | op2, dataSize)') |
386 defineMicroRegOp('Adc', 'DestReg = merge(DestReg, SrcReg1 + op2, dataSize)') 387 defineMicroRegOp('Sbb', 'DestReg = merge(DestReg, SrcReg1 - op2, dataSize)', True) | 386 defineMicroRegOp('Adc', ''' 387 CCFlagBits flags = ccFlagBits; 388 DestReg = merge(DestReg, SrcReg1 + op2 + flags.CF, dataSize); 389 ''') 390 defineMicroRegOp('Sbb', ''' 391 CCFlagBits flags = ccFlagBits; 392 DestReg = merge(DestReg, SrcReg1 - op2 - flags.CF, dataSize); 393 ''', True) |
388 defineMicroRegOp('And', 'DestReg = merge(DestReg, SrcReg1 & op2, dataSize)') 389 defineMicroRegOp('Sub', 'DestReg = merge(DestReg, SrcReg1 - op2, dataSize)', True) 390 defineMicroRegOp('Xor', 'DestReg = merge(DestReg, SrcReg1 ^ op2, dataSize)') | 394 defineMicroRegOp('And', 'DestReg = merge(DestReg, SrcReg1 & op2, dataSize)') 395 defineMicroRegOp('Sub', 'DestReg = merge(DestReg, SrcReg1 - op2, dataSize)', True) 396 defineMicroRegOp('Xor', 'DestReg = merge(DestReg, SrcReg1 ^ op2, dataSize)') |
391 defineMicroRegOp('Cmp', 'DestReg = merge(DestReg, DestReg - op2, dataSize)', True) | 397 # defineMicroRegOp('Cmp', 'DestReg = merge(DestReg, DestReg - op2, dataSize)', True) |
392 defineMicroRegOp('Mul1s', 'DestReg = merge(DestReg, DestReg * op2, dataSize)') 393 defineMicroRegOp('Mov', 'DestReg = merge(SrcReg1, op2, dataSize)', 394 elseCode='DestReg=DestReg;', cc=True) 395 396 # Shift instructions 397 defineMicroRegOp('Sll', ''' 398 uint8_t shiftAmt = (op2 & ((dataSize == 8) ? mask(4) : mask(3))); 399 DestReg = merge(DestReg, SrcReg1 << shiftAmt, dataSize); --- 83 unchanged lines hidden --- | 398 defineMicroRegOp('Mul1s', 'DestReg = merge(DestReg, DestReg * op2, dataSize)') 399 defineMicroRegOp('Mov', 'DestReg = merge(SrcReg1, op2, dataSize)', 400 elseCode='DestReg=DestReg;', cc=True) 401 402 # Shift instructions 403 defineMicroRegOp('Sll', ''' 404 uint8_t shiftAmt = (op2 & ((dataSize == 8) ? mask(4) : mask(3))); 405 DestReg = merge(DestReg, SrcReg1 << shiftAmt, dataSize); --- 83 unchanged lines hidden --- |