search for: basetyp

Displaying 20 results from an estimated 59 matches for "basetyp".

Did you mean: basetype
2019 Aug 01
5
RFC: Strong typedef for LLVM
...e(false)); foo(arg1, Flag2Value(true), Flag1Value(false)); // Won't compile. Of course, defining individual classes for every kind of flag does not scale. However, a template class can make it workable: template<typename Tag, typename T> class StrongTypedef { public: using BaseType = T; private: BaseType Value; public: constexpr StrongTypedef() : Value() {} constexpr StrongTypedef(const StrongTypedef<Tag, T> &) = default; explicit constexpr StrongTypedef(const BaseType &V) : Value(V) {} explicit StrongTypedef(BaseType &&V)...
2009 Jun 15
0
[LLVMdev] Regular Expressions
On Jun 15, 2009, at 11:33 AM, David Greene wrote: > To reduce redundancy, developers must be able to write generic > patterns > like this: > > [(set DSTREGCLASS:$dst, // rr, rrr > (xor (INTSRCTYPE (bitconvert (SRCTYPE SRCREGCLASS:$src1))), > (INTSRCTYPE (bitconvert (SRCTYPE SRCREGCLASS:$src2)))))], > > The substitution then fills in the appropriate types,
2009 Jun 15
2
[LLVMdev] Regular Expressions
Chris Lattner wrote: > However, I don't see any reason to base this off of strings. Instead > of passing down "f32" as a string, why not do something like this > pseudo code: > > class X86ValueType { > RegisterClass RegClass; > ... > } > > def X86_f32 : X86ValueType { > let RegClass = FR32; > ... }; > def X86_i32 :
2017 Oct 01
2
load with alignment of 1 crashes from being unaligned
..."zig 0.0.0", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !3, globals: !47) !2 = !DIFile(filename: "test", directory: ".") !3 = !{!4, !40} !4 = !DICompositeType(tag: DW_TAG_enumeration_type, name: "Os", scope: !5, file: !5, line: 1, baseType: !6, size: 8, align: 8, elements: !7) !5 = !DIFile(filename: "builtin.zig", directory: "/home/andy/dev/zig/build/zig-cache") !6 = !DIBasicType(name: "u6", size: 8, encoding: DW_ATE_unsigned) !7 = !{!8, !9, !10, !11, !12, !13, !14, !15, !16, !17, !18, !19, !20, !21, !2...
2009 Jun 17
3
[LLVMdev] Regular Expressions
...VX. Passing multiple types (v4f32, v8f32, etc.) is not practical, it just obfuscates the top-level specification. Now we need some guts: multiclass sse41_avx_fp_binary_vector_osta_vintrinsic_rmi_rrmi< bits<8> opc, PatFrag ImmClass, string OpcodeString, string Intrinsic, string BaseType, list<list<dag>> ipatterns = [], string asm = "" > { def rr_Int : ... def rm_Int : ... def V#NAME#_128rrr_Int : fp_binary_vector_irrr< opc, // I'm not even sure this field reference will work !strconcat(OpcodeStr, !cast<X86V...
2015 Apr 09
2
[LLVMdev] TBAA metadata
...ich the pointer is derived from. Take the following example. I know %0 = load i32, i32* %a, align 4, !tbaa !1 and store i32 %i.02, i32* %b, align 4, !tbaa !6 do not alias as their metadata !1 = !{!2, !3, i64 0} and !6 = !{!7, !3, i64 0} tell me that they are derived from different (incompatible) basetypes. However i can also walk up the IR chain and find out %a is point to basetype object of struct A and %b pointing to basetype object of struct B. Maybe, the metadata simplified the TBAA pass ? Thanks, -Trent ; ModuleID = 'tbaa.ll' target datalayout = "e-m:e-i64:64-f80:128-n8:16:32...
2011 Oct 18
3
[LLVMdev] non-POD type with llvm-objdump
...< "[" << format("%2d", i) << "]" << "(sec " << format("%2d", int16_t(symbol->SectionNumber)) << ")" << "(fl 0x" << format("%02x", symbol->Type.BaseType) << ")" << "(ty " << format("%3x", symbol->Type.ComplexType) << ")" << "(scl " << format("%3x", symbol->StorageClass) << ") " << "...
2018 Jul 24
2
StructType --> DICompositeType?
...Type: !6 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "S", file: !3, line: 1, size: 64, flags: DIFlagTypePassByValue, elements: !7, identifier: "_ZTS1S") !7 = !{!8, !10} !8 = !DIDerivedType(tag: DW_TAG_member, name: "x", scope: !6, file: !3, line: 2, baseType: !9, size: 32) !9 = !DIBasicType(name: "int", size: 32, encoding: DW_ATE_signed) !10 = !DIDerivedType(tag: DW_TAG_member, name: "y", scope: !6, file: !3, line: 2, baseType: !9, size: 32, offset: 32) but given just the StructType for S there is no direct way to get to the DICo...
2017 Nov 15
2
workaround for debug info bug?
...: !17) !5 = !DIFile(filename: "test.zig", directory: "/home/andy/dev/zig/build") !6 = !DISubroutineType(types: !7) !7 = !{!8, !9} !8 = !DIBasicType(name: "void", encoding: DW_ATE_unsigned) !9 = !DIDerivedType(tag: DW_TAG_pointer_type, name: "&[]const u8", baseType: !10, size: 64, align: 64) !10 = !DICompositeType(tag: DW_TAG_structure_type, name: "[]u8", size: 128, align: 64, elements: !11) !11 = !{!12, !15} !12 = !DIDerivedType(tag: DW_TAG_member, name: "ptr", scope: !10, baseType: !13, size: 64, align: 64) !13 = !DIDerivedType(tag: DW_...
2018 Jul 25
2
A question to the DWARF experts on symbol indirection
> -----Original Message----- > From: llvm-dev [mailto:llvm-dev-bounces at lists.llvm.org] On Behalf Of Tim > Northover via llvm-dev > Sent: Wednesday, July 25, 2018 3:07 AM > To: Nat! > Cc: LLVM Developers Mailing List > Subject: Re: [llvm-dev] A question to the DWARF experts on symbol > indirection > > Hi Nat!, > > On Wed, 25 Jul 2018 at 01:21, Nat! via
2016 Apr 30
2
Debug info scope of explicit casting type does not seem correct
...to the following IR: !0 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !1, producer: "clang version 3.9.0 (trunk 267335)", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !2, retainedTypes: !3) !3 = !{!4} !4 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !5, size: 32, align: 32) <----------------- No Scope, leads to compile unit scope!! !5 = !DIDerivedType(tag: DW_TAG_typedef, name: "T", scope: !7, file: !6, line: 16, baseType: !20) !7 = distinct !DISubprogram(name: "foo<B>", linkageName: "_Z3fooI1BEiPv", s...
2011 Oct 19
0
[LLVMdev] non-POD type with llvm-objdump
...ot; << format("%2d", i) << "]" >              << "(sec " << format("%2d", int16_t(symbol->SectionNumber)) << > ")" >              << "(fl 0x" << format("%02x", symbol->Type.BaseType) << ")" >              << "(ty " << format("%3x", symbol->Type.ComplexType) << ")" >              << "(scl " << format("%3x", symbol->StorageClass) << ") " >              ...
2019 Jan 19
2
What does "preds" mean in a .ll file?
Hi, I see things like this. What does it mean? Is it documented somewhere? Thanks. ; preds = %for.body https://llvm.org/docs/LangRef.html ; <label>:91: ; preds = %88 %92 = load i8**, i8*** @glob_complete_word.matches, align 8, !dbg !99798 %93 = load i32, i32* @glob_complete_word.ind, align 4, !dbg !99799 %94 = sext i32 %93 to i64, !dbg !99798
2017 Jun 19
2
LLVM behavior different depending on function symbol name
...zig 0.0.0", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !3, globals: !12) !2 = !DIFile(filename: "test", directory: ".") !3 = !{!4} !4 = !DICompositeType(tag: DW_TAG_enumeration_type, name: "GlobalLinkage", scope: !5, file: !5, line: 126, baseType: !6, size: 8, align: 8, elements: !7) !5 = !DIFile(filename: "builtin.zig", directory: "/home/andy/dev/zig/build/zig-cache") !6 = !DIBasicType(name: "u8", size: 8, encoding: DW_ATE_unsigned_char) !7 = !{!8, !9, !10, !11} !8 = !DIEnumerator(name: "Internal",...
2016 May 07
2
Debug info scope of explicit casting type does not seem correct
...to the following IR: !0 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !1, producer: "clang version 3.9.0 (trunk 267335)", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !2, retainedTypes: !3) !3 = !{!4} !4 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !5, size: 32, align: 32) <----------------- No Scope, leads to compile unit scope!! !5 = !DIDerivedType(tag: DW_TAG_typedef, name: "T", scope: !7, file: !6, line: 16, baseType: !20) !7 = distinct !DISubprogram(name: "foo<B>", linkageName: "_Z3fooI1BEiPv", s...
2018 Nov 01
4
Fwd: RFC: Adding debug information to LLVM to support Fortran
...stant size as in the following example. The example shows a two-dimensional array, named array, that has indices from 1 to 10 for the rows and 2 to 11 for the columns. TYPE(t) :: array(10,2:11) For this declaration, the compiler generates the following LLVM metadata. !100 = !DIFortranArrayType(baseType: !7, elements: !101) !101 = !{ !102, !103 } !102 = !DIFortranSubrange(constLowerBound: 1, constUpperBound: 10) !103 = !DIFortranSubrange(constLowerBound: 2, constUpperBound: 11) The DWARF generated for this is as follows. (DWARF asserts in the standard that arrays are interpreted as column-m...
2017 Jun 19
2
LLVM behavior different depending on function symbol name
...rsion: 0, emissionKind: FullDebug, >> enums: !3, globals: !12) >> !2 = !DIFile(filename: "test", directory: ".") >> !3 = !{!4} >> !4 = !DICompositeType(tag: DW_TAG_enumeration_type, name: >> "GlobalLinkage", scope: !5, file: !5, line: 126, baseType: !6, size: 8, >> align: 8, elements: !7) >> !5 = !DIFile(filename: "builtin.zig", directory: >> "/home/andy/dev/zig/build/zig-cache") >> !6 = !DIBasicType(name: "u8", size: 8, encoding: DW_ATE_unsigned_char) >> !7 = !{!8, !9, !10, !11} &g...
2016 Dec 21
2
debug info "ref" parameter
...bg !30 } !22 = !DIExpression() !20 = !DILocalVariable(name: "i", scope: !21, file: !6, line: 11, type: !13) !26 = !DILocalVariable(name: "i", scope: !27, file: !6, line: 15, type: !13) !13 = !DIDerivedType(tag: DW_TAG_typedef, name: "Integer", scope: !2, file: !3, baseType: !14) !14 = !DIBasicType(name: "Integer", size: 32, align: 32, encoding: DW_ATE_signed) -- Carlo Kok RemObjects Software
2017 Sep 16
2
assertion triggered since update to llvm 5
...zig 0.0.0", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !3, globals: !12) !2 = !DIFile(filename: "test", directory: ".") !3 = !{!4} !4 = !DICompositeType(tag: DW_TAG_enumeration_type, name: "GlobalLinkage", scope: !5, file: !5, line: 138, baseType: !6, size: 8, align: 8, elements: !7) !5 = !DIFile(filename: "builtin.zig", directory: "/home/andy/dev/zig/build-llvm5-debug/zig-cache") !6 = !DIBasicType(name: "u3", size: 8, encoding: DW_ATE_unsigned) !7 = !{!8, !9, !10, !11} !8 = !DIEnumerator(name: "Internal&...
2017 Sep 17
2
assertion triggered since update to llvm 5
...rsion: 0, emissionKind: FullDebug, >> enums: !3, globals: !12) >> !2 = !DIFile(filename: "test", directory: ".") >> !3 = !{!4} >> !4 = !DICompositeType(tag: DW_TAG_enumeration_type, name: >> "GlobalLinkage", scope: !5, file: !5, line: 138, baseType: !6, size: 8, >> align: 8, elements: !7) >> !5 = !DIFile(filename: "builtin.zig", directory: >> "/home/andy/dev/zig/build-llvm5-debug/zig-cache") >> !6 = !DIBasicType(name: "u3", size: 8, encoding: DW_ATE_unsigned) >> !7 = !{!8, !9, !10,...