- User Since
- Mar 7 2019, 2:10 PM (23 w, 3 d)
Fri, Aug 16
- Move libcall check inside while loop
- Remove find()
Address space have backend defined semantics, and aren’t really reserved for front end use. I think the fact that non-0 address spaces on X86 codegen the same as address space 0 and could be used for something by a front end is an accident of how SelectionDAG is implemented. If X86 wants to reserve address space ranges for frontend use, that would need to be decided and documented. You don’t necessarily get the current behavior for free in GlobalISel since pointer types are distinct, so this would specifically need to be implemented.
- Check that file is bitcode
- Change test to look at lld map
Thu, Aug 15
- Change the datalayout strings in test cases for x86 so they match the new datalayout and tests pass.
- Change the address space numbers, mostly so I don't have to change the fact that currently address spaces under
256 don't do anything.
Thu, Aug 8
Can you post a reproducer?
Turns out I just didn't have assertions enabled. With assertions the changed test cases should fail.
@lebedev.ri The test case datalayout strings were changed because somewhere llvm asserts that the string in the IR matches the backend datalayout. I don't know why I wasn't getting the assert error now, but I think they'll all have to be changed if we change the X86 datalayout?
Remove test case changes.
For some reason the tests were failing before without the datalayout change? I'm not sure why, but I changed them back and they're fine.
The llvm-dev discussion is here http://lists.llvm.org/pipermail/llvm-dev/2019-July/134035.html
I think the consensus is that it should be fine to change the data layout.
Committed in https://reviews.llvm.org/rL368230
Wed, Aug 7
- Add clear to the SDNode map when Selection DAG is cleared
Tue, Aug 6
Remove tail call metadata; update test
Mon, Aug 5
- Revert "[MS] Emit S_HEAPALLOCSITE debug info in Selection DAG" and
- Recommit "[MS] Emit S_HEAPALLOCSITE debug info in Selection DAG"
Wed, Jul 31
Tue, Jul 30
Add nullptr to struct declaration
Mon, Jul 22
It seems there is now an SDNode map in SelectionDAG for CallSiteInfo.
I merged the HeapAllocSite map with the CallSiteInfo map so that we don't have
two maps that use SDNodes as keys.
Jul 19 2019
There is now a new patch that attaches the metadata to a call operand-- https://reviews.llvm.org/D65023.
Jul 18 2019
Jul 8 2019
Jun 20 2019
Why isn't this using FileCheck variable matching in the first place? That's the least fragile solution.
No reason, just something I overlooked when I wrote it-
Looks good, alternatively I think we can just change %result.ptr into a variable match?
Jun 19 2019
- fix alignment of pointer in inalloca case
- make existing tests stop failing by changing some and adding a check for existing return value alloca (I think?) before adding the ReturnValuePointer alloca
- Add clang and llvm tests, and windows debuginfo test
- Use GEP as returnValuePointer in inalloca case
- Add bool parameter for EmitDeclare when pointer is being used
Jun 18 2019
- add semicolon
Now creates a pointer to the return location in the function prolog, whenever sret is being used.
Jun 17 2019
They should all be there, but emitting the unused enums makes the binary sizes larger. (I think around 6% increase? I forget the size difference for only emitting used enums)
I think the main issue was keeping track of which enums are used?
Jun 14 2019
- fix test case
Jun 13 2019
Jun 11 2019
Change to not emit DIGlobalVariable for enums when they are defined in a class, which
matches MSVC's behavior and gets around the issue of having to create a name with scope.
Jun 10 2019
Jun 7 2019
Add case for enums in classes.
Jun 6 2019
- add comment
May 30 2019
May 29 2019
Append class name to static data member debug info name.
This causes the chromium build to fail with
FAILED: obj/third_party/blink/renderer/bindings/core/v8/bindings_core_impl/v8_feature_policy.o ../../third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF obj/third_party/blink/renderer/bindings/core/v8/bindings_core_impl/v8_feature_policy.o.d -DUSE_UDEV -DUSE_AURA=1 -DUSE_GLIB=1 -DUSE_NSS_CERTS=1 -DUSE_X11=1 -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD -DSAFE_BROWSING_DB_LOCAL -DCHROMIUM_BUILD -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_GNU_SOURCE -DCR_CLANG_REVISION=\"361677-bede937b-0\" -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D_FORTIFY_SOURCE=2 -DCOMPONENT_BUILD -D_LIBCPP_ABI_UNSTABLE -D_LIBCPP_ABI_VERSION=Cr -D_LIBCPP_ENABLE_NODISCARD -DCR_LIBCXX_REVISION=361348 -DCR_SYSROOT_HASH=e7c53f04bd88d29d075bfd1f62b073aeb69cbe09 -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -DBLINK_CORE_IMPLEMENTATION=1 -DGLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_32 -DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_26 -DWEBP_EXTERN=extern -DGL_GLEXT_PROTOTYPES -DUSE_GLX -DUSE_EGL -DVK_NO_PROTOTYPES -DBLINK_IMPLEMENTATION=1 -DINSIDE_BLINK -DBORINGSSL_SHARED_LIBRARY -DWEBRTC_NON_STATIC_TRACE_EVENT_HANDLERS=0 -DWEBRTC_CHROMIUM_BUILD -DWEBRTC_POSIX -DWEBRTC_LINUX -DABSL_ALLOCATOR_NOTHROW=1 -DNO_MAIN_THREAD_WRAPPING -DU_USING_ICU_NAMESPACE=0 -DU_ENABLE_DYLOAD=0 -DUSE_CHROMIUM_ICU=1 -DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_FILE -DUCHAR_TYPE=uint16_t -DGOOGLE_PROTOBUF_NO_RTTI -DGOOGLE_PROTOBUF_NO_STATIC_INITIALIZER -DHAVE_PTHREAD -DPROTOBUF_USE_DLLS -DSK_GL -DSK_HAS_PNG_LIBRARY -DSK_HAS_WEBP_LIBRARY -DSK_USER_CONFIG_HEADER=\"../../skia/config/SkUserConfig.h\" -DSK_HAS_JPEG_LIBRARY -DSK_VULKAN_HEADER=\"../../skia/config/SkVulkanConfig.h\" -DSK_VULKAN=1 -DSKIA_DLL -DSKCMS_API=__attribute__\(\(visibility\(\"default\"\)\)\) -DSK_SUPPORT_GPU=1 -DSK_GPU_WORKAROUNDS_HEADER=\"gpu/config/gpu_driver_bug_workaround_autogen.h\" -DVK_NO_PROTOTYPES -DUSING_V8_SHARED -DV8_DEPRECATION_WARNINGS -DLEVELDB_PLATFORM_CHROMIUM=1 -DLEVELDB_PLATFORM_CHROMIUM=1 -DLEVELDB_SHARED_LIBRARY -DWTF_USE_WEBAUDIO_FFMPEG=1 -DSUPPORT_WEBGL2_COMPUTE_CONTEXT=1 -DUSE_LIBJPEG_TURBO=1 -DUSING_V8_SHARED -DV8_DEPRECATION_WARNINGS -DLIBXSLT_STATIC -I../.. -Igen -I../../third_party/libyuv/include -I../../third_party/libwebp/src -I../../third_party/khronos -I../../gpu -I../../third_party/vulkan/include -Igen/third_party/dawn -I../../third_party/dawn/src/include -I../../third_party/boringssl/src/include -I../../third_party/webrtc_overrides -I../../third_party/webrtc -Igen/third_party/webrtc -I../../third_party/abseil-cpp -I../../third_party/ced/src -I../../third_party/icu/source/common -I../../third_party/icu/source/i18n -I../../third_party/protobuf/src -I../../third_party/protobuf/src -Igen/protoc_out -I../../third_party/skia -I../../third_party/vulkan/include -I../../third_party/skia/third_party/vulkanmemoryallocator -I../../third_party/vulkan/include -I../../third_party/angle/include -I../../third_party/angle/src/common/third_party/base -Igen/angle -I../../third_party/angle/include -I../../v8/include -Igen/v8/include -I../../third_party/libwebm/source -I../../third_party/leveldatabase -I../../third_party/leveldatabase/src -I../../third_party/leveldatabase/src/include -I../../third_party/libjpeg_turbo -I../../third_party/iccjpeg -I../../third_party/libpng -I../../third_party/zlib -I../../third_party/ots/include -I../../v8/include -Igen/v8/include -I../../third_party/libxml/src/include -I../../third_party/libxml/linux/include -I../../third_party/libxslt/src -I../../third_party/snappy/src -I../../third_party/snappy/linux -fno-strict-aliasing --param=ssp-buffer-size=4 -fstack-protector -funwind-tables -fPIC -B../../third_party/binutils/Linux_x64/Release/bin -pthread -fcolor-diagnostics -fmerge-all-constants -fcrash-diagnostics-dir=../../tools/clang/crashreports -Xclang -mllvm -Xclang -instcombine-lower-dbg-declare=0 -fcomplete-member-pointers -m64 -march=x86-64 -Wno-builtin-macro-redefined -D__DATE__= -D__TIME__= -D__TIMESTAMP__= -Xclang -fdebug-compilation-dir -Xclang . -no-canonical-prefixes -Wall -Werror -Wextra -Wimplicit-fallthrough -Wthread-safety -Wextra-semi -Wno-missing-field-initializers -Wno-unused-parameter -Wno-c++11-narrowing -Wno-unneeded-internal-declaration -Wno-undefined-var-template -Wno-ignored-pragma-optimize -O2 -fno-ident -fdata-sections -ffunction-sections -fno-omit-frame-pointer -fvisibility=hidden -Xclang -add-plugin -Xclang find-bad-constructs -Xclang -plugin-arg-find-bad-constructs -Xclang check-ipc -Wheader-hygiene -Wstring-conversion -Wtautological-overlap-compare -Wexit-time-destructors -Xclang -add-plugin -Xclang blink-gc-plugin -Wglobal-constructors -g2 -ggnu-pubnames -isystem../../build/linux/debian_sid_amd64-sysroot/usr/include/glib-2.0 -isystem../../build/linux/debian_sid_amd64-sysroot/usr/lib/x86_64-linux-gnu/glib-2.0/include -Wconversion -Wno-float-conversion -Wno-sign-conversion -Wno-implicit-float-conversion -Wno-implicit-int-conversion -Wno-shorten-64-to-32 -Wno-header-guard -isystem../../build/linux/debian_sid_amd64-sysroot/usr/include/nss -isystem../../build/linux/debian_sid_amd64-sysroot/usr/include/nspr -DLIBXML_STATIC= -std=c++14 -fno-exceptions -fno-rtti -nostdinc++ -isystem../../buildtools/third_party/libc++/trunk/include -isystem../../buildtools/third_party/libc++abi/trunk/include --sysroot=../../build/linux/debian_sid_amd64-sysroot -fvisibility-inlines-hidden -c gen/third_party/blink/renderer/bindings/core/v8/v8_feature_policy.cc -o obj/third_party/blink/renderer/bindings/core/v8/bindings_core_impl/v8_feature_policy.o In file included from gen/third_party/blink/renderer/bindings/core/v8/v8_feature_policy.cc:11: In file included from gen/third_party/blink/renderer/bindings/core/v8/v8_feature_policy.h:14: In file included from ../../third_party/blink/renderer/bindings/core/v8/generated_code_helper.h:14: In file included from ../../third_party/blink/renderer/bindings/core/v8/script_promise.h:34: ../../base/memory/scoped_refptr.h:291:6: error: member access into incomplete type 'const blink::SecurityOrigin' ptr->AddRef(); ^ ../../base/memory/scoped_refptr.h:177:7: note: in instantiation of member function 'scoped_refptr<const blink::SecurityOrigin>::AddRef' requested here AddRef(ptr_); ^ ../../third_party/blink/renderer/platform/bindings/dom_wrapper_world.h:50:7: note: forward declaration of 'blink::SecurityOrigin' class SecurityOrigin; ^ 1 error generated.
May 24 2019
May 23 2019
Add llvm IR test.
May 22 2019
May 21 2019
May 20 2019
May 16 2019