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

Side by Side Diff: unittest/AssemblerX8664/TestUtil.h

Issue 1428443002: Enhance address mode recovery (Closed) Base URL: https://chromium.googlesource.com/native_client/pnacl-subzero.git@master
Patch Set: Streamline absolute addressing support (rip-relative on x64) Created 5 years, 1 month 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
OLDNEW
1 1
2 //===- subzero/unittest/unittest/AssemblerX8664/TestUtil.h ------*- C++ -*-===// 2 //===- subzero/unittest/unittest/AssemblerX8664/TestUtil.h ------*- C++ -*-===//
3 // 3 //
4 // The Subzero Code Generator 4 // The Subzero Code Generator
5 // 5 //
6 // This file is distributed under the University of Illinois Open Source 6 // This file is distributed under the University of Illinois Open Source
7 // License. See LICENSE.TXT for details. 7 // License. See LICENSE.TXT for details.
8 // 8 //
9 //===----------------------------------------------------------------------===// 9 //===----------------------------------------------------------------------===//
10 // 10 //
(...skipping 912 matching lines...) Expand 10 before | Expand all | Expand 10 after
923 } 923 }
924 924
925 // Allocates a new dqword slot in the test's scratchpad area. 925 // Allocates a new dqword slot in the test's scratchpad area.
926 uint32_t allocateDqword() { 926 uint32_t allocateDqword() {
927 uint32_t InitialDword = allocateQword(); 927 uint32_t InitialDword = allocateQword();
928 allocateQword(); 928 allocateQword();
929 return InitialDword; 929 return InitialDword;
930 } 930 }
931 931
932 Address dwordAddress(uint32_t Dword) { 932 Address dwordAddress(uint32_t Dword) {
933 return Address(Encoded_GPR_r9(), dwordDisp(Dword)); 933 return Address(Encoded_GPR_r9(), dwordDisp(Dword), nullptr);
934 } 934 }
935 935
936 private: 936 private:
937 // e??SlotAddress returns an AssemblerX8664::Traits::Address that can be used 937 // e??SlotAddress returns an AssemblerX8664::Traits::Address that can be used
938 // by the test cases to encode an address operand for accessing the slot for 938 // by the test cases to encode an address operand for accessing the slot for
939 // the specified register. These are all private for, when jitting the test 939 // the specified register. These are all private for, when jitting the test
940 // code, tests should not tamper with these values. Besides, during the test 940 // code, tests should not tamper with these values. Besides, during the test
941 // execution these slots' contents are undefined and should not be accessed. 941 // execution these slots' contents are undefined and should not be accessed.
942 Address raxSlotAddress() { return dwordAddress(AssembledTest::raxSlot()); } 942 Address raxSlotAddress() { return dwordAddress(AssembledTest::raxSlot()); }
943 Address rbxSlotAddress() { return dwordAddress(AssembledTest::rbxSlot()); } 943 Address rbxSlotAddress() { return dwordAddress(AssembledTest::rbxSlot()); }
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after
1088 1088
1089 bool NeedsEpilogue; 1089 bool NeedsEpilogue;
1090 uint32_t NumAllocatedDwords; 1090 uint32_t NumAllocatedDwords;
1091 }; 1091 };
1092 1092
1093 } // end of namespace Test 1093 } // end of namespace Test
1094 } // end of namespace X8664 1094 } // end of namespace X8664
1095 } // end of namespace Ice 1095 } // end of namespace Ice
1096 1096
1097 #endif // ASSEMBLERX8664_TESTUTIL_H_ 1097 #endif // ASSEMBLERX8664_TESTUTIL_H_
OLDNEW
« unittest/AssemblerX8632/ControlFlow.cpp ('K') | « unittest/AssemblerX8664/LowLevel.cpp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698