diff options
author | Lars Knoll <lars.knoll@qt.io> | 2018-06-09 23:31:26 +0200 |
---|---|---|
committer | Lars Knoll <lars.knoll@qt.io> | 2018-06-21 19:43:28 +0000 |
commit | 6969aa5932f0eb7171dea2b4da39c21d1c09cc60 (patch) | |
tree | a842b629c57bbc3e3486de0d9783f9ed61ea307b /src/qml/jit | |
parent | 0562ece42df80cd3ffe3c3fe6b2097202fe65500 (diff) |
Get rid of LoadElement and LoadProperty instruction overloads
Always use the overload where the value is in the accumulator.
Change-Id: I6a3d81fea7aae957e0cf6efd123d7739f8880c95
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Diffstat (limited to 'src/qml/jit')
-rw-r--r-- | src/qml/jit/qv4baselinejit.cpp | 25 | ||||
-rw-r--r-- | src/qml/jit/qv4baselinejit_p.h | 6 |
2 files changed, 4 insertions, 27 deletions
diff --git a/src/qml/jit/qv4baselinejit.cpp b/src/qml/jit/qv4baselinejit.cpp index ac6fc976f4..7f9674c57f 100644 --- a/src/qml/jit/qv4baselinejit.cpp +++ b/src/qml/jit/qv4baselinejit.cpp @@ -233,18 +233,7 @@ void BaselineJIT::generate_StoreNameStrict(int name) as->checkException(); } -void BaselineJIT::generate_LoadElement(int base, int index) -{ - STORE_IP(); - as->prepareCallWithArgCount(3); - as->passRegAsArg(index, 2); - as->passRegAsArg(base, 1); - as->passEngineAsArg(0); - JIT_GENERATE_RUNTIME_CALL(Runtime::method_loadElement, Assembler::ResultInAccumulator); - as->checkException(); -} - -void BaselineJIT::generate_LoadElementA(int base) +void BaselineJIT::generate_LoadElement(int base) { STORE_IP(); STORE_ACC(); @@ -276,17 +265,7 @@ void BaselineJIT::generate_StoreElement(int base, int index) as->checkException(); } -void BaselineJIT::generate_LoadProperty(int name, int base) -{ - STORE_IP(); - as->prepareCallWithArgCount(3); - as->passInt32AsArg(name, 2); - as->passRegAsArg(base, 1); - as->passEngineAsArg(0); - JIT_GENERATE_RUNTIME_CALL(Runtime::method_loadProperty, Assembler::ResultInAccumulator); - as->checkException(); -} -void BaselineJIT::generate_LoadPropertyA(int name) +void BaselineJIT::generate_LoadProperty(int name) { STORE_IP(); STORE_ACC(); diff --git a/src/qml/jit/qv4baselinejit_p.h b/src/qml/jit/qv4baselinejit_p.h index fda410db69..b09efb1680 100644 --- a/src/qml/jit/qv4baselinejit_p.h +++ b/src/qml/jit/qv4baselinejit_p.h @@ -98,11 +98,9 @@ public: void generate_LoadGlobalLookup(int index) override; void generate_StoreNameSloppy(int name) override; void generate_StoreNameStrict(int name) override; - void generate_LoadElement(int base, int index) override; - void generate_LoadElementA(int base) override; + void generate_LoadElement(int base) override; void generate_StoreElement(int base, int index) override; - void generate_LoadProperty(int name, int base) override; - void generate_LoadPropertyA(int name) override; + void generate_LoadProperty(int name) override; void generate_GetLookup(int index, int base) override; void generate_GetLookupA(int index) override; void generate_StoreProperty(int name, int base) override; |