#include "acpi.h"
#include "accommon.h"
#include "acinterp.h"
#include "acparser.h"
#include "amlcode.h"
Go to the source code of this file.
◆ _COMPONENT
◆ AcpiExOpcode_3A_0T_0R()
Naming convention for AML interpreter execution routines.
The routines that begin execution of AML opcodes are named with a common convention based upon the number of arguments, the number of target operands, and whether or not a value is returned:
AcpiExOpcode_xA_yT_zR
Where:
xA - ARGUMENTS: The number of arguments (input operands) that are required for this opcode type (1 through 6 args). yT - TARGETS: The number of targets (output operands) that are required for this opcode type (0, 1, or 2 targets). zR - RETURN VALUE: Indicates whether this opcode type returns a value as the function return (0 or 1).
The AcpiExOpcode* functions are called via the Dispatcher component with fully resolved operands. !
Definition at line 91 of file exoparg3.c.
93{
97
98
101
102
103 switch (WalkState->
Opcode)
104 {
106
108 "FatalOp: Type %X Code %X Arg %X "
109 "<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<\n",
110 (
UINT32) Operand[0]->Integer.Value,
111 (
UINT32) Operand[1]->Integer.Value,
112 (
UINT32) Operand[2]->Integer.Value));
113
116 {
119 Fatal->Argument = (
UINT32) Operand[2]->Integer.Value;
120 }
121
122
123
125
126
127
130
132
133
134
135
136
137
138
139
143
144 default:
145
148
151 }
152
153
155
157}
#define AE_AML_BAD_OPCODE
#define ACPI_DEBUG_PRINT(pl)
#define ACPI_FUNCTION_TRACE_STR(a, b)
#define return_ACPI_STATUS(s)
#define ACPI_ERROR(plist)
const char * AcpiPsGetOpcodeName(UINT16 Opcode)
ACPI_STATUS AcpiOsSignal(UINT32 Function, void *Info)
#define ACPI_SIGNAL_FATAL
static const WCHAR Cleanup[]
union acpi_operand_object * Operands[ACPI_OBJ_NUM_OPERANDS+1]
ACPI_OBJECT_INTEGER Integer
◆ AcpiExOpcode_3A_1T_1R()
Definition at line 173 of file exoparg3.c.
175{
182
183
186
187
188 switch (WalkState->
Opcode)
189 {
191
192
193
194
196 (Operand[0])->Common.Type);
197 if (!ReturnDesc)
198 {
201 }
202
203
204
206 Length = (ACPI_SIZE) Operand[2]->Integer.Value;
207
208
209
210
211
213 {
215 }
216
217
218
220 {
222 (ACPI_SIZE) Operand[0]->
String.Length - (ACPI_SIZE)
Index;
223 }
224
225
226
227 switch ((Operand[0])->Common.Type)
228 {
230
231
232
235 {
238 }
239 break;
240
242
243
244
246 {
247
248
251 {
254 }
255 }
256 break;
257
258 default:
259
262 }
263
265 {
266
267
270 }
271
272
273
276
277
278
280 break;
281
282 default:
283
286
289 }
290
291
292
294
296
297
298
300 {
303 }
304 else
305 {
306
307
309 }
310
312}
#define AE_AML_OPERAND_TYPE
#define AOPOBJ_DATA_VALID
COMPILER_DEPENDENT_UINT64 UINT64
#define ACPI_ALLOCATE_ZEROED(a)
#define AcpiUtCreateInternalObject(t)
void AcpiUtRemoveReference(ACPI_OPERAND_OBJECT *Object)
ACPI_STATUS AcpiExStore(ACPI_OPERAND_OBJECT *SourceDesc, ACPI_OPERAND_OBJECT *DestDesc, ACPI_WALK_STATE *WalkState)
#define memcpy(s1, s2, n)
_In_ ULONG _In_ ULONG _In_ ULONG Length
union acpi_operand_object * ResultObj
ACPI_OBJECT_STRING String
ACPI_OBJECT_BUFFER Buffer
_In_ WDFCOLLECTION _In_ ULONG Index
_Must_inspect_result_ _In_ WDFDEVICE _In_ WDFSTRING String