mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-08-17 21:29:20 +00:00
PR400 phase 1 implementation feedback.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36354 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
dc4cb35105
commit
032507d989
@ -255,8 +255,7 @@ public:
|
||||
/// getAlignment - Return the alignment of the access that is being performed
|
||||
///
|
||||
unsigned getAlignment() const {
|
||||
signed Log2AlignVal = ((SubclassData>>1)-1);
|
||||
return ((Log2AlignVal < 0) ? 0 : 1<<Log2AlignVal);
|
||||
return (1 << (SubclassData>>1)) >> 1;
|
||||
}
|
||||
|
||||
void setAlignment(unsigned Align);
|
||||
@ -331,8 +330,7 @@ public:
|
||||
/// getAlignment - Return the alignment of the access that is being performed
|
||||
///
|
||||
unsigned getAlignment() const {
|
||||
signed Log2AlignVal = ((SubclassData>>1)-1);
|
||||
return ((Log2AlignVal < 0) ? 0 : 1<<Log2AlignVal);
|
||||
return (1 << (SubclassData>>1)) >> 1;
|
||||
}
|
||||
|
||||
void setAlignment(unsigned Align);
|
||||
|
@ -834,9 +834,8 @@ void BytecodeReader::ParseInstruction(SmallVector<unsigned, 8> &Oprnds,
|
||||
case 62: { // attributed load
|
||||
if (Oprnds.size() != 2 || !isa<PointerType>(InstTy))
|
||||
error("Invalid attributed load instruction!");
|
||||
signed Log2AlignVal = ((Oprnds[1]>>1)-1);
|
||||
Result = new LoadInst(getValue(iType, Oprnds[0]), "", (Oprnds[1] & 1),
|
||||
((Log2AlignVal < 0) ? 0 : 1<<Log2AlignVal));
|
||||
(1 << (Oprnds[1]>>1)) >> 1);
|
||||
break;
|
||||
}
|
||||
case Instruction::Load:
|
||||
@ -850,10 +849,9 @@ void BytecodeReader::ParseInstruction(SmallVector<unsigned, 8> &Oprnds,
|
||||
|
||||
Value *Ptr = getValue(iType, Oprnds[1]);
|
||||
const Type *ValTy = cast<PointerType>(Ptr->getType())->getElementType();
|
||||
signed Log2AlignVal = ((Oprnds[2]>>1)-1);
|
||||
Result = new StoreInst(getValue(getTypeSlot(ValTy), Oprnds[0]), Ptr,
|
||||
(Oprnds[2] & 1),
|
||||
((Log2AlignVal < 0) ? 0 : 1<<Log2AlignVal));
|
||||
(1 << (Oprnds[2]>>1)) >> 1);
|
||||
break;
|
||||
}
|
||||
case Instruction::Store: {
|
||||
|
Loading…
Reference in New Issue
Block a user