Changeset 259848 in webkit


Ignore:
Timestamp:
Apr 9, 2020 11:25:42 PM (4 years ago)
Author:
mark.lam@apple.com
Message:

Fix bad tests in testmasm's testCagePreservesPACFailureBit().
https://bugs.webkit.org/show_bug.cgi?id=210314
<rdar://problem/61556785>

Reviewed by Yusuke Suzuki.

Some of these tests will crash when validated untagging is enabled.

  • assembler/testmasm.cpp:

(JSC::testCagePreservesPACFailureBit):

Location:
trunk/Source/JavaScriptCore
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/ChangeLog

    r259843 r259848  
     12020-04-09  Mark Lam  <mark.lam@apple.com>
     2
     3        Fix bad tests in testmasm's testCagePreservesPACFailureBit().
     4        https://bugs.webkit.org/show_bug.cgi?id=210314
     5        <rdar://problem/61556785>
     6
     7        Reviewed by Yusuke Suzuki.
     8
     9        Some of these tests will crash when validated untagging is enabled.
     10
     11        * assembler/testmasm.cpp:
     12        (JSC::testCagePreservesPACFailureBit):
     13
    1142020-04-08  Darin Adler  <darin@apple.com>
    215
  • trunk/Source/JavaScriptCore/assembler/testmasm.cpp

    r258063 r259848  
    11/*
    2  * Copyright (C) 2017-2019 Apple Inc. All rights reserved.
     2 * Copyright (C) 2017-2020 Apple Inc. All rights reserved.
    33 *
    44 * Redistribution and use in source and binary forms, with or without
     
    21332133
    21342134    if (isARM64E()) {
    2135         // FIXME: This won't work if authentication failures trap but I don't know how to test for that right now.
    21362135        CHECK_NOT_EQ(invoke<void*>(cage, taggedPtr, 2), ptr);
    2137         CHECK_EQ(invoke<void*>(cage, taggedNotCagedPtr, 1), untagArrayPtr(taggedPtr, 2));
     2136        CHECK_NOT_EQ(invoke<void*>(cage, taggedNotCagedPtr, 1), ptr);
    21382137    } else
    21392138        CHECK_EQ(invoke<void*>(cage, taggedPtr, 2), ptr);
     
    21512150    CHECK_EQ(invoke<void*>(cageWithoutAuthentication, taggedPtr), taggedPtr);
    21522151    if (isARM64E()) {
    2153         // FIXME: This won't work if authentication failures trap but I don't know how to test for that right now.
    21542152        CHECK_NOT_EQ(invoke<void*>(cageWithoutAuthentication, taggedNotCagedPtr), taggedNotCagedPtr);
    2155         CHECK_NOT_EQ(untagArrayPtr(invoke<void*>(cageWithoutAuthentication, taggedNotCagedPtr), 1), notCagedPtr);
     2153        CHECK_NOT_EQ(invoke<void*>(cageWithoutAuthentication, taggedNotCagedPtr), tagArrayPtr(notCagedPtr, 1));
    21562154        CHECK_NOT_EQ(invoke<void*>(cageWithoutAuthentication, taggedNotCagedPtr), taggedPtr);
    2157         CHECK_NOT_EQ(untagArrayPtr(invoke<void*>(cageWithoutAuthentication, taggedNotCagedPtr), 1), ptr);
     2155        CHECK_NOT_EQ(invoke<void*>(cageWithoutAuthentication, taggedNotCagedPtr), tagArrayPtr(ptr, 1));
    21582156    }
    21592157
Note: See TracChangeset for help on using the changeset viewer.