Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 60998b950370a44226388bd0d02de1ea4b6ed090
      
https://github.com/WebKit/WebKit/commit/60998b950370a44226388bd0d02de1ea4b6ed090
  Author: Mark Lam <mark....@apple.com>
  Date:   2025-08-28 (Thu, 28 Aug 2025)

  Changed paths:
    M Source/JavaScriptCore/assembler/JITOperationValidation.h
    M Source/WTF/wtf/PlatformCallingConventions.h

  Log Message:
  -----------
  Change JITOperationAnnotation's initialization to not rely on (void*) casts 
on function pointers.
https://bugs.webkit.org/show_bug.cgi?id=297941
rdar://158233829

Reviewed by Yusuke Suzuki.

Apparently, C++ does not allow this since C++11.  See 
https://github.com/llvm/llvm-project/pull/150557.

Instead, we'll introduce a JITOperationAnnotationInitializer template class 
that will be used to
initialize the const annotation records with the operation function pointers.  
As long as the size and
shape of JITOperationAnnotationInitializer is identical to 
JITOperationAnnotation, then we can do the
initialization using JITOperationAnnotationInitializer, and read the function 
pointer bits using
JITOperationAnnotation.

No test needed as there's no behavior change.  This patch merely changes how we 
express a data structure
just to placate the compiler.  Even the data structure layout is identical.  If 
it builds, the patch is
good.

* Source/JavaScriptCore/assembler/JITOperationValidation.h:
* Source/WTF/wtf/PlatformCallingConventions.h:

Canonical link: https://commits.webkit.org/299281@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to